leertaste Posted February 10, 2013 Group: Members Topic Count: 41 Topics Per Day: 0.01 Content Count: 137 Reputation: 1 Joined: 02/02/13 Last Seen: July 18, 2019 Share Posted February 10, 2013 (edited) Hello! I got this script: //===== eAthena Script ======================================= //= Poring Race System //===== By: ================================================== //= Zell_ff8 //= Modified and fixed by Wagner88 //===== Description: ========================================= //= Poring Race Bet System. //===== More: ================================================ //= Bet how much zeny you want //= You receive zeny when you win. //= Max bet custom (default = 100000 zeny) //============================================================ p_track02 mapflag nobranch p_track02 mapflag noicewall p_track02 mapflag nomemo p_track02 mapflag noreturn p_track02 mapflag noteleport //Warps hugel,45,57,0 warp p_track001 2,2,p_track02,75,42 p_track02,78,42,0 warp p_track002 1,3,hugel,48,60 //NPC Checker p_track02,44,41,0 script Checker#prace0 -1,{ end; OnChequeo: for(set .@tmp1,0;.@tmp1<(getarraysize($prace_bidders));set .@tmp1,.@tmp1+1) { if(attachrid($prace_bidders[.@tmp1])) { if (@prace_playing!=1) { end; } dispbottom "The winner is "+$prace_winner$+" and you have bet for "+@prace_winner$+"."; if (@prace_winner$==$prace_winner$ && @prace_winner$!="") { dispbottom "You have won!"; mapannounce "p_track02"," Congratulations! "+strcharinfo(0)+" has won!",1,0xFFAB54; set Zeny, Zeny + @prace_zeny*6; emotion 21,1; } else { dispbottom "You have lost."; emotion 28,1; } set @prace_winner$,""; set @prace_playing,0; } //else { announce .@tmp1+" || "+$prace_bidders[.@tmp1],bc_all; } //debug } for(set .@tmp1,0;.@tmp1<(getarraysize($prace_bidders));set .@tmp1,.@tmp1+1) { set $prace_bidders[.@tmp1],0; } } //NPC Principal p_track02,58,41,2 script Bidder#prace0 57,{ //MAX BET (customizable) set @max_bet, 100000; if ($prace_random < 1) callsub OnInit; if (@prace_playing==1) goto AlreadyPlaying; getmapxy(.@mapname$,.@x1,.@y,1,"Poring#prace1"); getmapxy(.@mapname$,.@x2,.@y,1,"Angeling#prace2"); getmapxy(.@mapname$,.@x3,.@y,1,"Metaling#prace3"); getmapxy(.@mapname$,.@x4,.@y,1,"Deviling#prace4"); getmapxy(.@mapname$,.@x5,.@y,1,"Santa Poring#prace5"); getmapxy(.@mapname$,.@x6,.@y,1,"Poporing#prace6"); if (.@x1 != 58 || .@x2 != 58 || .@x3 != 58 || .@x4 != 58 || .@x5 != 58 || .@x6 != 58) { mes "[Bidder]";mes "There is a race in progress...";close; end; } L_bet: mes "[Bidder]"; mes "How much zeny do you want to bet?"; mes "(maximum bet: " + @max_bet + " )"; input @prace_zeny; L_controlzeny: if(@prace_zeny > @max_bet) goto TooMuch; if(@prace_zeny==0) goto NoZero; if(Zeny < @prace_zeny) goto NotEnuf; goto L_poring; TooMuch: next; mes "[Bidder]"; mes "Sorry but the bet limit is " + @max_bet + " zeny."; close; NoZero: next; mes "[Bidder]"; mes "We're not joking here! Go away if you don't want to play zeny!"; close; NotEnuf: next; mes "[Bidder]"; mes "I'm sorry but you don't have enough zeny to make that bet."; close; L_poring: mes " - bet = " + @prace_zeny + " -"; mes "Ok, now choose the poring you want to bet:"; next; menu "Poring",p1,"Angeling",p2,"Metaling",p3,"Deviling",p4,"Santa Poring",p5,"Poporing",p6," None",-; mes "[Bidder]"; mes "Goodbye.";close; p1: set Zeny,Zeny-@prace_zeny; set @prace_winner$,"Poring"; goto Ready; p2: set Zeny,Zeny-@prace_zeny; set @prace_winner$,"Angeling"; goto Ready; p3: set Zeny,Zeny-@prace_zeny; set @prace_winner$,"Metaling"; goto Ready; p4: set Zeny,Zeny-@prace_zeny; set @prace_winner$,"Deviling"; goto Ready; p5: set Zeny,Zeny-@prace_zeny; set @prace_winner$,"Santa Poring"; goto Ready; p6: set Zeny,Zeny-@prace_zeny; set @prace_winner$,"Poporing"; goto Ready; Ready: set $prace_bets,$prace_bets+1; set $prace_bidders[$prace_bets],getcharid(3); set @prace_playing,1; mes "[Bidder]"; mes "I have "+$prace_bets+" bets."; setnpctimer 60000;startnpctimer; npctalk "I got "+strcharinfo(0)+" bet!"; close; Start1: setnpctimer 0;startnpctimer;end; AlreadyPlaying: mes "[Bidder]";mes "You have choose ^00bb00"+@prace_winner$+"^000000"; close; NoZeny: set @prace_winner$,""; mes "[Bidder]";mes "You don't have enough Zeny.";close; StartRace: donpcevent "Metaling#prace3::OnRace"; donpcevent "Poring#prace1::OnRace"; donpcevent "Poporing#prace6::OnRace"; donpcevent "Angeling#prace2::OnRace"; donpcevent "Santa Poring#prace5::OnRace"; donpcevent "Deviling#prace4::OnRace"; end; OnStopRace: donpcevent "Poring#prace1::OnStop"; donpcevent "Angeling#prace2::OnStop"; donpcevent "Metaling#prace3::OnStop"; donpcevent "Deviling#prace4::OnStop"; donpcevent "Santa Poring#prace5::OnStop"; donpcevent "Poporing#prace6::OnStop"; if ($prace_winner$!="") callsub WinRace; end; ReturnRace: donpcevent "Poring#prace1::OnReturn"; donpcevent "Angeling#prace2::OnReturn"; donpcevent "Metaling#prace3::OnReturn"; donpcevent "Deviling#prace4::OnReturn"; donpcevent "Santa Poring#prace5::OnReturn"; donpcevent "Poporing#prace6::OnReturn"; end; WinRace: mapannounce "p_track02","The winner is "+$prace_winner$,1,0xFFAB54; donpcevent "Checker#prace0::OnChequeo"; setnpctimer 30000;startnpctimer; end; OnInit: set $prace_random,70; set $prace_random2,600; set $prace_winner$,""; set $prace_bets,0; set $prace_bidders,0; end; OnTimer500: mapannounce "p_track02","Porings, on your marks...",1,0xFFAB54;end; OnTimer3000: mapannounce "p_track02","...3...",1,0xFFAB54;end; OnTimer4000: mapannounce "p_track02","...2...",1,0xFFAB54;end; OnTimer5000: mapannounce "p_track02","...1...",1,0xFFAB54; callsub StartRace;end; OnTimer6000: stopnpctimer; mapannounce "p_track02","Gooo!!!",1,0xFFAB54;end; OnTimer35000: set $prace_winner$,"";set $prace_bets,0; stopnpctimer;callsub ReturnRace;end; OnTimer90000: npctalk "I got "+$prace_bets+" bets. Anyone else?"; end; OnTimer110000: npctalk "The race will start soon. Last chance."; end; OnTimer120000: goto Start1; end; } //----------------------------------- // Racer NPC's //----------------------------------- p_track02,58,38,2 script Poring#prace1 1002,{ end; OnRace: initnpctimer; startnpctimer;end; OnStop: stopnpctimer;end; OnReturn: npcwalkto 58,38;end; OnTimer1100: getmapxy(.@mapname$,.@x,.@y,1,"Poring#prace1"); if(rand(100) < $prace_random) npcwalkto .@x-1,.@y; setnpctimer rand($prace_random2);startnpctimer; if ((.@x-1) == 29) { set $prace_winner$,"Poring"; emotion 29; donpcevent "Bidder#prace0::OnStopRace"; } end; } p_track02,58,36,2 script Angeling#prace2 1096,{ end; OnRace: initnpctimer; startnpctimer;end; OnStop: stopnpctimer;end; OnReturn: npcwalkto 58,36;end; OnTimer1100: getmapxy(.@mapname$,.@x,.@y,1,"Angeling#prace2"); if(rand(100) < $prace_random) npcwalkto .@x-1,.@y; setnpctimer rand($prace_random2);startnpctimer; if ((.@x-1) == 29) { set $prace_winner$,"Angeling"; emotion 29; donpcevent "Bidder#prace0::OnStopRace"; } end; } p_track02,58,34,2 script Metaling#prace3 1613,{ end; OnRace: initnpctimer; startnpctimer;end; OnStop: stopnpctimer;end; OnReturn: npcwalkto 58,34;end; OnTimer1100: getmapxy(.@mapname$,.@x,.@y,1,"Metaling#prace3"); if(rand(100) < $prace_random) npcwalkto .@x-1,.@y; setnpctimer rand($prace_random2);startnpctimer; if ((.@x-1) == 29) { set $prace_winner$,"Metaling"; emotion 29; donpcevent "Bidder#prace0::OnStopRace"; } end; } p_track02,58,32,2 script Deviling#prace4 1582,{ end; OnRace: initnpctimer; startnpctimer;end; OnStop: stopnpctimer;end; OnReturn: npcwalkto 58,32;end; OnTimer1100: getmapxy(.@mapname$,.@x,.@y,1,"Deviling#prace4"); if(rand(100) < $prace_random) npcwalkto .@x-1,.@y; setnpctimer rand($prace_random2);startnpctimer; if ((.@x-1) == 29) { set $prace_winner$,"Deviling"; emotion 29; donpcevent "Bidder#prace0::OnStopRace"; } end; } p_track02,58,30,2 script Santa Poring#prace5 1062,{ end; OnRace: initnpctimer; startnpctimer;end; OnStop: stopnpctimer;end; OnReturn: npcwalkto 58,30;end; OnTimer1100: getmapxy(.@mapname$,.@x,.@y,1,"Santa Poring#prace5"); if(rand(100) < $prace_random) npcwalkto .@x-1,.@y; setnpctimer rand($prace_random2);startnpctimer; if ((.@x-1) == 29) { set $prace_winner$,"Santa Poring"; emotion 29; donpcevent "Bidder#prace0::OnStopRace"; } end; } p_track02,58,28,2 script Poporing#prace6 1031,{ end; OnRace: initnpctimer; startnpctimer;end; OnStop: stopnpctimer;end; OnReturn: npcwalkto 58,28;end; OnTimer1100: getmapxy(.@mapname$,.@x,.@y,1,"Poporing#prace6"); if(rand(100) < $prace_random) npcwalkto .@x-1,.@y; setnpctimer rand($prace_random2);startnpctimer; if ((.@x-1) == 29) { set $prace_winner$,"Poporing"; emotion 29; donpcevent "Bidder#prace0::OnStopRace"; } end; } It's the poring race is it possible to change it from "zeny" to sth like Poring Race Points? Edited April 29, 2021 by Mael Cleaned Quote Link to comment Share on other sites More sharing options...
Capuche Posted February 17, 2013 Group: Developer Topic Count: 10 Topics Per Day: 0.00 Content Count: 2407 Reputation: 616 Joined: 07/05/12 Last Seen: March 20 Share Posted February 17, 2013 http://pastebin.com/raw.php?i=EWcS12eL I just change // set Zeny, Zeny + @prace_zeny*6; set #PoringRacePoints, #PoringRacePoints + @prace_zeny*6;//Poring Race Points and p1: set #PoringRacePoints, #PoringRacePoints -@prace_zeny; set @prace_winner$,"Poring"; goto Ready; p2: set #PoringRacePoints, #PoringRacePoints -@prace_zeny; set @prace_winner$,"Angeling"; goto Ready; p3: set #PoringRacePoints, #PoringRacePoints -@prace_zeny; set @prace_winner$,"Metaling"; goto Ready; p4: set #PoringRacePoints, #PoringRacePoints -@prace_zeny; set @prace_winner$,"Deviling"; goto Ready; p5: set #PoringRacePoints, #PoringRacePoints -@prace_zeny; set @prace_winner$,"Santa Poring"; goto Ready; p6: set #PoringRacePoints, #PoringRacePoints -@prace_zeny; set @prace_winner$,"Poporing"; goto Ready; and remove the cheat (lol) With this, players can bet Poring Race Points and gain news points Quote Link to comment Share on other sites More sharing options...
Capuche Posted February 14, 2013 Group: Developer Topic Count: 10 Topics Per Day: 0.00 Content Count: 2407 Reputation: 616 Joined: 07/05/12 Last Seen: March 20 Share Posted February 14, 2013 (edited) is it possible to change it from "zeny" to sth like Poring Race Points? Sure but player must bet something so he must own some points at first otherwise he can't bet Edited February 14, 2013 by Capuche Quote Link to comment Share on other sites More sharing options...
leertaste Posted February 14, 2013 Group: Members Topic Count: 41 Topics Per Day: 0.01 Content Count: 137 Reputation: 1 Joined: 02/02/13 Last Seen: July 18, 2019 Author Share Posted February 14, 2013 It's a charbased variable, right?i could give those points if an certain item is consumed.. but how to configure?^^ Quote Link to comment Share on other sites More sharing options...
15peaces Posted February 15, 2013 Group: Members Topic Count: 2 Topics Per Day: 0.00 Content Count: 143 Reputation: 8 Joined: 02/11/13 Last Seen: Yesterday at 05:02 PM Share Posted February 15, 2013 I'd prefer an sql-table since configuration and administration (maybe using a webtool) is easier this way... (my oppinion since i'm scripting nearly everything with sql-support to configure it via my cp.. xD) Quote Link to comment Share on other sites More sharing options...
Fresh prince Posted December 2, 2013 Group: Members Topic Count: 69 Topics Per Day: 0.02 Content Count: 295 Reputation: 6 Joined: 10/14/12 Last Seen: June 12, 2021 Share Posted December 2, 2013 After placing the bets, it goes only up to here. OnTimer90000: npctalk "I got "+$prace_bets+" bets. Anyone else?"; end; OnTimer110000: npctalk "The race will start soon. Last chance."; end; the event wont start. No error or anything. also, Mr Capuche what cheat did you remove? Thanks Quote Link to comment Share on other sites More sharing options...
Question
leertaste
Hello!
I got this script:
It's the poring race
Edited by Maelis it possible to change it from "zeny" to sth like Poring Race Points?
Cleaned
Link to comment
Share on other sites
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.