Helloo Scripters,
Can some one guide me to fix this?
prontera,181,157,4 script Poring Race 24004,{
if( .access_Prace == 0 ) {
mes "[Poring Race Staff]";
mes "Poring Race has ended.";
close;
}
mes "[Poring Race Staff]";
mes "Do you want to participate on Poring Race?";
if( select( "Yes","No" ) -1 ) {
next;
mes "[Poring Race Staff]";
mes "See you again next time!";
close;
}
if( .access_Prace == 0 ) {
next;
mes "[Poring Race Staff]";
mes "...";
mes "...";
mes "Cheater!!~~";
close;
set .access_Prace, 0;
announce "Poring Race is over!",0,0xFFAB54;
end;
}
p_track01,58,41,3 script Bidder#prace0 877,{
function checkevent;
mes "[Bidder]";
if( getstrlen( @prace_winner$ ) ) {
mes "You have choose ^00bb00"+ @prace_winner$ +"^000000";
close;
}
else if ( checkevent() || .start ) {
mes "There is a race in progress...";
close;
}
else if( !getvariableofnpc( .access_Prace,"Poring Race" ) ) {
mes "There is no race.";
close;
}
mes "Choose the poring you want to bet:";
mes "It will cost "+ .zeny_req +" Zeny.";
.@s = select( .menu_$ );
if( .@s == 7 ) {
next;
mes "[Bidder]";
mes "Goodbye.";
close;
}
.@c$ = .monst_$[ .@s -1 ];
if ( checkevent() ) {
next;
mes "[Bidder]";
mes "...";
mes "...";
mes "Cheater!!~~";
close;
}
else if( Zeny < .zeny_req ) {
next;
mes "[Bidder]";
mes "You don't have enough Zeny.";
close;
}
Zeny -= .zeny_req;
@prace_winner$ = .@c$;
.prace_bidders[ .prace_bets ] = getcharid(3);
.prace_bets++;
next;
mes "[Bidder]";
mes "I have "+ .prace_bets +" bets.";
initnpctimer;
npctalk "I got "+ strcharinfo(0) +" bet!";
close;
OnTimer60000:
npctalk "I got "+ .prace_bets +" bets. Anyone else?";
end;
OnTimer80000:
npctalk "The race will start soon. Last chance.";
end;
OnTimer90000:
stopnpctimer;
.start = 1;
mapannounce "p_track01","Porings, on your marks...",1,0xFFAB54;
sleep 2500;
for( .@i = 3; .@i > 0; .@i-- ) {
mapannounce "p_track01","..."+ .@i +"...",1,0xFFAB54;
sleep 1000;
}
donpcevent strnpcinfo(0) +"::OnStartRace";
sleep 1000;
mapannounce "p_track01","Gooo!!!",1,0xFFAB54;
end;
OnTimer320000:
mapwarp "p_track01","prontera",142,170;
donpcevent "Poring Race::OnPraceEnd";
.prace_winner$ = "";
.start = .prace_bets = 0;
donpcevent strnpcinfo(0) +"::OnReturnRace";
end;
OnStartRace:
callsub L_label, "OnRace";
OnStopRace:
callsub L_label, "OnStop";
OnReturnRace:
callsub L_label, "OnReturn";
L_label:
donpcevent "Metaling#prace3::"+ getarg(0);
donpcevent "Poring#prace1::"+ getarg(0);
donpcevent "Poporing#prace6::"+ getarg(0);
donpcevent "Angeling#prace2::"+ getarg(0);
donpcevent "Santa Poring#prace5::"+ getarg(0);
donpcevent "Deviling#prace4::"+ getarg(0);
dispbottom "You have won!";
//mapannounce "p_track01"," Congratulations! "+ strcharinfo(0) +" has won!",1,0xFFAB54;
announce " Congratulations! "+ strcharinfo(0) +" has won!", bc_all, 0xFFAB54;
getitem .item_gained, .item_num_gain;
//emotion 21,1;
}
else {
dispbottom "You have lost.";
//emotion 28,1;
}
@prace_winner$ = "";
}
}
deletearray .prace_bidders;
end;
OnInit:
disablenpc "prace_warp_portal"; // <--- ADD THESE
.zeny_req = 3500;
.item_gained = 7179;
.item_num_gain = 5;
setarray .monst_$,"Poring","Angeling","Metaling","Deviling","Santa Poring","Poporing","None";
.menu_$ = implode( .monst_$, ":" );
end;
return .@t;
}
}
//-----------------------------------
// Racer NPC's
//-----------------------------------
- script pori_race -1,{
OnRace:
initnpctimer;
end;
OnStop:
stopnpctimer;
end;
OnReturn:
sleep 1000;
while( strnpcinfo(1) != .monst$[ .@i ] ) .@i++;
movenpc strnpcinfo(3), 58, .walk_t[.@i];
end;
OnTimer1100:
getmapxy .@mapname$,.@x,.@y,BL_NPC, strnpcinfo(3);
if( rand(100) < .prace_random )
npcwalkto .@x-1, .@y;
startnpctimer;
end;
OnInit:
deletearray .walk_t;
deletearray .monst$;
setarray .walk_t, 38, 36, 34, 32, 30, 28;
setarray .monst$, "Poring", "Angeling", "Metaling", "Deviling", "Santa Poring", "Poporing";
.prace_random = 70;
.prace_random2 = 600;
end;
}
p_track01,58,38,2 duplicate(pori_race) Poring#prace1 1002
p_track01,58,36,2 duplicate(pori_race) Angeling#prace2 1096
p_track01,58,34,2 duplicate(pori_race) Metaling#prace3 1613
p_track01 mapflag nowarp
p_track01 mapflag pvp off
p_track01 mapflag nosave
[Debug]: Function: getstrlen (1 parameter):
[Debug]: Data: variable name='@prace_winner$' index=0
[Debug]: Source (NPC): Bidder#prace0 at p_track01 (58,41)
[Warning]: script:get_val: cannot access player variable '@prace_winner$', defaulting to ""