viewing paste Unknown #14354 | Text

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
//===== Hourly Points Script =========================================
//===== By: ==========================================================
//= GorthexTiger modified by Nibi
//===== Current Version: =============================================
//= 1.0
//===== Compatible With: =============================================
//= Any eAthena Version
//===== Description: =================================================
//= Get Points every successful hours of gameplay, you cannot get
//= the points even if you miss a second or a minute. A player will
//= get a very big bonus if they played 3 hours consecutively
//= or without logging out of the game. If the player is vending
//= the script will then stop.
//===== Additional Comments: =========================================
//= You can modify the script to your liking.
//= The default points is Kafrapoints change it anyway if you like.
//= 1.1 = Check Chatting too
//= 1.2 = 5 Minute Idle Check & @at/@autotrade check.
//= 1.3 = Corrected the current balance line on 12 Hours Consecutive
//====================================================================
-    script    hourlypoints    -1,{
//--Start of the Script
OnPCLoginEvent:
    addtimer .timer,"hourlypoints::OnPointGet";
    end;
    
OnPointGet:
    while(checkvending() >= 1 || checkchatting() == 1 || checkidle()>=.dlimit) {
        sleep2 .delay;
        if(.@mes$=="")
            dispbottom set(.@mes$,"The hourly points event haulted because you were vending, chatting, or idle.");
    }
    set #CASHPOINTS, #CASHPOINTS + .point_amt;
    dispbottom "You received "+.point_amt+" Kafrapoints by staying ingame for 1 hour";
    dispbottom "Current Balance = "+#CASHPOINTS+" Kafrapoints";
    set @consecutive_hour, @consecutive_hour + 1;
 
    //Check for 3 hours consecutive
    if(@consecutive_hour == 3) {
        set @consecutive_hour,0;
        set #CASHPOINTS, #CASHPOINTS + .cpoint_amt;
        dispbottom "You receive "+.cpoint_amt+" Kafrapoints in playing for 12 consecutive hours";
        dispbottom "Current Balance = "+#CASHPOINTS+" Kafrapoints";
    }
    addtimer .timer,"hourlypoints::OnPointGet";
    end;
 
OnInit:
    set .timer, 1000*60*60; //Timer in milliseconds.
    set .cpoint_amt, 50; //Points gained for consecutive time online.
    set .point_amt, 10; //Normal points gained.
    set .delay, 1000; //Delay for idle re-check check.
    set .dlimit, 60*5; //Stop points if afk greater then in seconds.
}
Viewed 563 times, submitted by Guest.