Нужно сделать так. В игре есть 8 игроков и 1 из них должен стать (рандомно) в первую ночь (19:00) вампиром (нужно сделать анимацию кровавого взрыва и появление на этом месте вампира ,вампир - герой игрока 12 (бота,которым может руководить игрок) Цель вампира - съесть всех других 7-ми игроков. На месте любого убитого человека должна произойти та же анимация - кровавый взрыв и появление на его месте вампира,который командует не бот,а сам игрок уже,которого убили. И нужно сделать победы такими . Люди победят,если убьют всех вампиров (включая зараженных). Вампиры победят,если убьют всех людей. Так же нужно,чтобы вампиры горели с 6:00 и им днем с этого времени наносился урон в размере 15 ед. в сек,но если вампир прячется в дом (способность как на корабле погрузить,только с замком) ,то он спокойно живет днем,как и все зараженные. Надеюсь вы поняли ,прошу хелп.

через переменную случайное число
`
ОЖИДАНИЕ РЕКЛАМЫ...
28
Делаешь глобальный массив логических PlayerInGame и на инициализации пишешь в него true, если игрок есть.
Номера игроков начинаются с нуля.
local integer a=0
loop
exitwhen a>7
set p=Player(a)
if GetPlayerSlotState(p)==PLAYER_SLOT_STATE_PLAYING then
set PlayerInGame[a]=true
endif
set a=a+1
endloop
После этого создаёшь массив целых числел и записываешь туда действующих игроков.
local integer array players
local integer a=0
local integer n=-1
local integer vampireplayer=0
loop
exitwhen a>7
if PlayerInGame[a] then
set n=n+1
set players[n]=a
endif
set a=a+1
endloop
После выбираешь рандомного.
set vampire=players[GetRandomInt(0,n)]
Как распространить форматирование на несколько строк?
11
PT153:
Делаешь глобальный массив логических PlayerInGame и на инициализации пишешь в него true, если игрок есть.
Номера игроков начинаются с нуля.
local integer a=0
loop
exitwhen a>7
set p=Player(a)
if GetPlayerSlotState(p)==PLAYER_SLOT_STATE_PLAYING then
set PlayerInGame[a]=true
endif
set a=a+1
endloop
После этого создаёшь массив целых числел и записываешь туда действующих игроков.
local integer array players
local integer a=0
local integer n=-1
local integer vampireplayer=0
loop
exitwhen a>7
if PlayerInGame[a] then
set n=n+1
set players[n]=a
endif
set a=a+1
endloop
После выбираешь рандомного.
set vampire=players[GetRandomInt(0,n)]
Как распространить форматирование на несколько строк?
Забыл написать,что на на ДЖАСС коде,я пока не на языке
10
Daniil33:
Забыл написать,что на на ДЖАСС коде,я пока не на языке
"Забыл написать, что не на jass коде, я пока не знаю его"?
11
Morkoffka:
Daniil33:
Забыл написать,что на на ДЖАСС коде,я пока не на языке
"Забыл написать, что не на jass коде, я пока не знаю его"?
Опечатка,да,я его не знаю
10
А что именно не понятно? Вы не можете подобрать игрока или создать анимацию кровавого взрыва? Ваша задумка оригинальная и состоит из нескольких частей. Подбор игрока и нанесение вампиру урона в 6:00 - это разные задачи. Спрашивайте отдельные моменты. Делать перечисленную вами систему никто не возьмётся, вам лишь помогут понять как реализовать какой-то момент, но не всю карту
23
Daniil33, кроме рандома системма примитивна дальше некуда.
Вот нашел тему по рандов одну из старейших где просто размышляли над этим понятием, прочитай поможет понять как делать рандомно действия: xgm.guru/p/wc3/142909
2
через переменную случайное число
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.