Jump to content
  • 0

Change the bet in poring race


Question

8 answers to this question

Recommended Posts

Posted (edited)
// Capuche cleaning Base on the poring race by Zell_ff8, xianz, Neko
prontera,141,181,5    script    Poring Race    882,{

    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;
    }
    close2;
    @prace_winner$ = "";
    warp "p_track01",52,41;
    end;
// OnInit:
OnMinute120:
    if( gettime(3)%2 ) end;
    set .access_Prace, 1;
    announce "Poring Race is now open!",0,0xFFAB54;
    setnpctimer 100000,"Bidder#prace0";
    startnpctimer "Bidder#prace0";
    end;
OnPraceEnd:
    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);
    if( getarg(0) == "OnStop" && .prace_winner$ != "" )
        callsub L_WinRace;
    end;
L_WinRace:
    mapannounce "p_track01", "The winner is "+ .prace_winner$,1,0xFFAB54;
    donpcevent strnpcinfo(0) +"::OnChequeo";
    sleep 3000;
    donpcevent strnpcinfo(0) +"::OnReturnRace";
    sleep 10000;
    mapwarp "p_track01","prontera",142,170;
    donpcevent "Poring Race::OnPraceEnd";
    .prace_winner$ = "";
    .start = .prace_bets = 0;
    end;
OnChequeo:
    for( .@i = 0 ; .@i < getarraysize( .prace_bidders ); .@i++ ) {
        if( attachrid( .prace_bidders[.@i] ) && getstrlen( @prace_winner$ ) ) {
            dispbottom "The winner is "+ .prace_winner$ +" and you have bet for "+ @prace_winner$ +".";
            if( @prace_winner$ == .prace_winner$ ) {
                dispbottom "You have won!";
                mapannounce "p_track01"," Congratulations! "+ strcharinfo(0) +" has won!",1,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:
    .zeny_req = 3500;
    .item_gained = 7199;
    .item_num_gain = 2;
    setarray .monst_$,"Poring","Angeling","Metaling","Deviling","Santa Poring","Poporing","None";
    .menu_$ = implode( .monst_$, ":" );
    end;

function checkevent {
    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";
    .@t = ( .@x1 + .@x2 + .@x3 + .@x4 + .@x5 + .@x6 ) != 58 * 6;
    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,1, strnpcinfo(3);
    if( rand(100) < .prace_random )
        npcwalkto .@x-1, .@y;
    .@r = rand( .prace_random2 );
    if ( .@x -1 == 29 ) {
        while( strnpcinfo(1) != .monst$[ .@i ] ) .@i++;
        set getvariableofnpc( .prace_winner$, "Bidder#prace0" ), .monst$[ .@i ];
        emotion 29;
        donpcevent "Bidder#prace0::OnStopRace";
        end;
    }
    stopnpctimer;
    setnpctimer .@r;
    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,58,32,2    duplicate(pori_race)    Deviling#prace4    1582
p_track01,58,30,2    duplicate(pori_race)    Santa Poring#prace5    1062
p_track01,58,28,2    duplicate(pori_race)    Poporing#prace6    1031

p_track01,78,42,0    warp    p_track002    1,3,prontera,142,170

p_track01    mapflag    nobranch
p_track01    mapflag    noicewall
p_track01    mapflag    nomemo
p_track01    mapflag    noreturn
p_track01    mapflag    noteleport
p_track01    mapflag    nowarpto
p_track01    mapflag    nowarp
p_track01    mapflag    pvp    off
p_track01    mapflag    nosave

 

 

 

here it is. :3 and also i need to change it to maximum bet will be 150 cash point. please help me out here ^_^

Edited by ayennnnnnn
Posted
    else if( Zeny < .zeny_req ) {
        next;
        mes "[Bidder]";
        mes "You don't have enough Zeny.";
        close;
    }
    Zeny -= .zeny_req;

change to

    else if( #CASHPOINTS < .zeny_req ) {
        next;
        mes "[Bidder]";
        mes "You don't have enough Cashpoint.";
        close;
    }
    #CASHPOINTS -= .zeny_req;
Posted
    else if( Zeny < .zeny_req ) {
        next;
        mes "[Bidder]";
        mes "You don't have enough Zeny.";
        close;
    }
    Zeny -= .zeny_req;

change to

    else if( #CASHPOINTS < .zeny_req ) {
        next;
        mes "[Bidder]";
        mes "You don't have enough Cashpoint.";
        close;
    }
    #CASHPOINTS -= .zeny_req;

thanks, btw how can i make a maximum bet will be 250 cashpoint.?

Posted


else if( #CASHPOINTS < .zeny_req ) {

next;

mes "[Bidder]";

mes "You don't have enough Cashpoint.";

close;

}

else if(.zeny_req > 250) {

next;

mes "[Bidder]";

mes "The maximum of bit only 250.";

close;

}

#CASHPOINTS -= .zeny_req;

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...