Flitemaster Опубликовано 14 марта, 2016 Жалоба Поделиться Опубликовано 14 марта, 2016 (изменено) Вообщем есть эвент абры, вроде работает , но иногда выбивает ошибку, помогите.. Цитата [Warning]: script:getelementofarray: index out of range (-1) [Debug]: Data: variable name='.aid' index=0 [Debug]: Source (NPC): Abracadabra at prontera (136,204) вот сам скрипт prontera,136,204,5 script Abracadabra 924,{ if(getgmlevel()<20){ if ( .event == 2 || .event == 0 ) end; for(set .@i,0;.@i<getarraysize(.aid);set .@i, .@i+1){ if(getcharid(3)==.aid[.@i]){ end; } } if ( .event == 1 ) { set .aid[ getarraysize(.aid) ], getcharid(3); mapannounce "prontera", strcharinfo(0) +" joined the game", 8; warp "event",101,109; end; } } OnClock2025: //OnMinute55: if ( .event == 1 || .event == 2){end;} announce "Event 'Abracadabra' Begins! NPC to the left of the fountain.", 8; announce "You have 120 seconds to register",0; set .event, 1; deletearray .aid; sleep 120000; set .event, 2; if ( getarraysize(.aid) < 2 ){ announce "Abracadabra Event canceled, because it did not have enough people", 8; mapwarp "event","prontera",156,181; deletearray .aid[.@i], 1; set .event,0; end; } announce "Registration is complete. The event started.", 8; while ( getarraysize(.aid) > 1 ) { if (!isloggedin(.aid[.@i])){ deletearray .aid[.@i], 1; set .@i, .@i -1; } sleep 1000; mapannounce "prontera", "next player "+ rid2name(.aid[.@i]), 8; attachrid .aid[.@i]; switch ( rand(25,32) ) { case 25: specialeffect2 25; if ( hp - 100000 < 0 ) { unitkill getcharid(3); deletearray .aid[.@i], 1; set .@i, .@i -1; } else set hp, hp - 100000; case 26: specialeffect2 26; if ( hp - 100000 < 0 ) { unitkill getcharid(3); deletearray .aid[.@i], 1; set .@i, .@i -1; } else set hp, hp - 100000; break; case 27: specialeffect2 27; if ( hp - 100000 < 0 ) { unitkill getcharid(3); deletearray .aid[.@i], 1; set .@i, .@i -1; } else set hp, hp - 100000; break; case 28: specialeffect2 28; if ( hp - 100000 < 0 ) { unitkill getcharid(3); deletearray .aid[.@i], 1; set .@i, .@i -1; } else set hp, hp - 100000; break; case 29: specialeffect2 29; if ( hp - 100000 < 0 ) { unitkill getcharid(3); deletearray .aid[.@i], 1; set .@i, .@i -1; } else set hp, hp - 100000; break; case 30: specialeffect2 30; sc_start SC_INCMATKRATE, 30000, -50; break; case 31: specialeffect2 31; if ( hp - 100000 < 0 ) { unitkill getcharid(3); deletearray .aid[.@i], 1; set .@i, .@i -1; } else set hp, hp - 100000; // .... all positive buff break; case 32: specialeffect2 32; if ( hp - 10000000 < 0 ) { unitkill getcharid(3); deletearray .aid[.@i], 1; set .@i, .@i -1; } else set hp, hp - 10000000; break; } set .@i, .@i +1 ; if ( .@i == getarraysize(.aid) ) { set .@i, 0; set .@round, .@round +1 ; mapannounce "prontera", "Round ยน "+ .@round, 8; } } if ( .aid == 0 ) announce "No winners", 8; else { announce "Event won "+ rid2name(.aid) , 8; attachrid .aid; getitem 25112, 1; atcommand "@raisemap"; mapwarp "event","prontera",156,181; } set .event, 0; end; } event mapflag nowarp event mapflag nowarpto event mapflag noteleport event mapflag noreturn event mapflag nosave event mapflag nomemo event mapflag nobranch event mapflag noloot event mapflag noskill event mapflag nopenalty event mapflag nogo Изменено 14 марта, 2016 пользователем Flitemaster Ссылка на комментарий Поделиться на другие сайты Поделиться
Grimmjow Опубликовано 15 марта, 2016 Жалоба Поделиться Опубликовано 15 марта, 2016 (изменено) . Изменено 15 августа, 2017 пользователем Grimmjow 3 Ссылка на комментарий Поделиться на другие сайты Поделиться
Flitemaster Опубликовано 15 марта, 2016 Автор Жалоба Поделиться Опубликовано 15 марта, 2016 не катит. Ссылка на комментарий Поделиться на другие сайты Поделиться
Grimmjow Опубликовано 15 марта, 2016 Жалоба Поделиться Опубликовано 15 марта, 2016 (изменено) . Изменено 15 августа, 2017 пользователем Grimmjow 2 Ссылка на комментарий Поделиться на другие сайты Поделиться
Flitemaster Опубликовано 16 марта, 2016 Автор Жалоба Поделиться Опубликовано 16 марта, 2016 (изменено) у меня не геркулес, и у меня по прежнему выбивало ошибку, но я переписал его и теперь всё норм. кому нужен вот мой новый вариант. Только замените локацию Event и приз на свой. Вот тут скрипт! Изменено 16 марта, 2016 пользователем Flitemaster Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения