там заложен механизм чтения из памяти значенй и запись (в область данных) - ты добейся пока с одним окном клиента, чтоб правильно считывалось каждое значение, проверяй его - неправильно оно может считаться и дальше использоваться при несовпадении типов данных ..Quote:
Странно...
BYTE - 1 байт, WORD - 2 байта, DWORD - 4 байта - причем это все только положительные значения, а INT - тоже 4 байта но и отрицательные значения может принимать. Потом - у меня например все правильно определял. Может где ты че изменил. Ты не обязан использовать точно так как есть - можешь все переделать по своему - как ты понимаешь.
Но механизм там - правильный, порядок действий тоже..
насчет 99% и 101% не должно там быть ..
CharHP, CharMxHP и CharPrHP - попробуй объявить как DWORD // поэтому .. наверное
я объявлял как float для другого элемента управления Прогресс-Бар - он FLOAT использовал ..
а стандартный использует int переменную - и когда числа с точкой ему присваиваешь - он их округляет до ближайшего целого ..
m_cPrHp.SetPos(static_cast<int>(CharPrHP)); - тут можно скорректировать.
по поводу определения мобов на территории - посмотри в настройках - Радиус боя и по XY и по Z, уровень Мобов точнее укажи для своего перса, может там нули у тебя ..
полюбому находит всех в локации NPC, монстров, Петов.
а для себя - определяет ближнего монстра, - подходящего по настройкам и если он не занят.
- галочка "Помогать другим" в настройках если будет стоять то в код надо добавить - обход проверки на занятость моба - может это потребуется кому ..
- даойная атака - это у меня в др. проекте используется - там поединок с 2 (с 3-мя тоже можно)
сразу - происходит переключение целей попеременно при этом контролируется свое здоровье - и здоровье двух противников (вот почему нужна скорость кода) в этот момент если используется Пет - он ставится в режим охраны - сам клиент уже будет помогать нам в бою, и из этого режима ему подаются команды атаки 1-го - 2-го 3-го смотря кого надо в данный момент. После атаки он автоматом возвращается защитить вас, переключается на вашу цель, а вы в это время атакуете другого или собираете Лут у первого. Во время боя проверяется и здоровье Пета - может его надо подлечить. Заранее перед всеми атаками назначается контрольная точка для медитации (с легким заходом на нее может быть возвышенность или граница локации) и в поединке при очень плохих делах - Перс отходит на нее, Пет доделывает начатую атаку и отзывается чтобы защищать перса при медитации.. причем Пет и Перс перебирают свои умения по времени их перезарядки, используя самые мощьные по величине ущерба как своему так и противника - если монстру уже сдыхать скоро - выбирается более легкое умение (чтобы не тратить энергию вхолостую). Перекрестная атака - это реальная вещь - так прокачка происходит в 2-3 раза быстрее, даже если учитывать время медитации.