Перейти к содержимому


Фотография

Боты и их дамаг


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 5

#1 OFFLINE   Meyson

Meyson

    Ефрейтор

  • Пользователи
  • 30 сообщений

Отправлено 07 January 2017 - 20:36

Приветствую форумчане! Помогите решить траблу: нужно что бы бот (Допустим зомби), подойдя к игроку на расстояние ну допустим в метр (В общем вблизи), начал наносить дамаг непосредственно игроку, как реализовтаь это? Заранее больше спасибо, и плюс )


  • 0

#2 OFFLINE   dos622

dos622

    Ст. Прапорщик

  • Пользователи
  • 702 сообщений

Отправлено 09 January 2017 - 14:45

if ((_zomby distance player) <= 1) and (alive player)) then {
player setDamage 0.1;
};

если расстояние метр и меньше, игроку будет нанесен урон 0.1

еще можно,  предваритеньно взять уже имеющийся урон с игрока, и добавить к нему новый.


if ((_zomby distance player) <= 1) and (alive player)) then {
    _hitDamage=0.1;
    player setdamage ((getdamage player) + _hitDamage);

};

_hitDamage количество урона которое добавится.


  • 1

#3 OFFLINE   Meyson

Meyson

    Ефрейтор

  • Пользователи
  • 30 сообщений

Отправлено 10 January 2017 - 16:09

if ((_zomby distance player) <= 1) and (alive player)) then {
player setDamage 0.1;
};

если расстояние метр и меньше, игроку будет нанесен урон 0.1

еще можно,  предваритеньно взять уже имеющийся урон с игрока, и добавить к нему новый.


if ((_zomby distance player) <= 1) and (alive player)) then {
    _hitDamage=0.1;
    player setdamage ((getdamage player) + _hitDamage);

};

_hitDamage количество урона которое добавится.

 

не пишет в инициализацию через редактор


  • 0

#4 OFFLINE   dos622

dos622

    Ст. Прапорщик

  • Пользователи
  • 702 сообщений

Отправлено 11 January 2017 - 10:49

Meyson

Оно и не будет.

для начала, перемнной _zomby нужно присвоить тот объект, который будет наносить урон.

потом нужно будет зациклить эту проверку на игроке.

А чтобы все это сделать, нужно видеть, что ты конкретно используешь.

зациклить например можно так:

where {true} do {

какой то код

sleep 0.5;
};

будет повторяться каждые 0.5 секунд


  • 0

#5 OFFLINE   MAECTPO

MAECTPO

    Рядовой

  • Пользователи
  • 3 сообщений
  • Откуда:Киев

Отправлено 16 February 2017 - 16:59

//попробуй так
 

/*
при спавне зомби, заносим их в массив ZombieArray. 
ZombieArray = [];
ZombieArray = ZombieArray + [_zombie];
*/
 
private ["_hitDamage","_zombie","_player"];
_hitDamage=0.1
{
_player= _x;
{
_zombie = _x;
while {(_zombie distance _player) <= 2) and (alive _player)} do {
player setdamage ((getdamage player) + _hitDamage);
sleep 1;
};
} foreach ZombieArray;
} foreach playableunits;

  • 0

#6 OFFLINE   lopster102

lopster102

    Ст.сержант

  • Пользователи
  • 267 сообщений
  • Откуда:mscw

Отправлено 01 March 2017 - 00:36

Приветствую форумчане! Помогите решить траблу: нужно что бы бот (Допустим зомби), подойдя к игроку на расстояние ну допустим в метр (В общем вблизи), начал наносить дамаг непосредственно игроку, как реализовтаь это? Заранее больше спасибо, и плюс )

 то что ты хочешь можно реализовать по разному тут тебе нужно самому определить как это будет работать .... можно вообще сделать через проверку  через nearObjects добавлять игрока в массив и вычленять его так как в момент когда зомби подойдет   игрок может быть рядом с еще одним игроком или объектами вокруг него и код не будет работать.....учитывая что на этом форуме больше половины задают вопросы , однозначного ответа не даст тебе никто ! потому что это лучше скриптовать самому  так как тут будет не одна проверка в скрипте!


  • 0




Яндекс.Метрика