Jump to content

bigwasanro

Members
  • Posts

    10
  • Joined

  • Last visited

Posts posted by bigwasanro

  1. hi need help to my script because is not working properly. it wont give points when you chatting and moving i want to add timer to see the hourly points is working thanks

     

     

    //===== 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:
    
    
    anounce:
    dispbottom "The hourly points system has started please continue to be online to gain points.";
    end;
    
    
    attachnpctimer ""+strcharinfo(0)+"";
    initnpctimer;
    end;
    
    
    OnTimer30000:
    //Check if Vending (normal or @at)
    if(checkvending() >= 1) {
        dispbottom "The hourly points event stopped because you were vending. Please relog if you wish to start again.";
        stopnpctimer;
        end;
    }
    
    
    //Check if Idle
    getmapxy( .@map$, .@x, .@y, 0 );
    if(@map$ == .@map$ && @x == .@x && @y == .@y) {
        set @afk, @afk + 1;
    }
    //If move timer resets
    else {
        set @afk, 0;
    }
        set @map$, .@map$; set @x, .@x; set @y, .@y;
    //Idle Check for 5 Minutes
    if(@afk == 1600000000) {
        dispbottom "The hourly points event stopped because you were idle for 5 minutes. Please relog if you wish to start again.";
        stopnpctimer;
        end;
    }
    
    
    OnTimer60000:
    set @minute, @minute + 1;
    //Check for 1 Minute
    if(@minute == 60){
        set @minute,0;
        set .@point_amt, 10; //Points to get every hour (default: 10)
        set #REWARDPOINTS, #REWARDPOINTS+ .@point_amt;
        dispbottom "You received "+.@point_amt+" Rewardpoints by staying ingame for 1 hour";
        dispbottom "Current Balance = "+#REWARDPOINTS+" Rewardpoints";
        set @consecutive_hour, @consecutive_hour + 1;
        }
    //Check for 12 hours consecutive
        if(@consecutive_hour == 12) {
        set @consecutive_hour,0;
        set .@cpoint_amt, 20; //Points to get for 12 Consecutive hours (default: 50)
        set #REWARDPOINTS, #REWARDPOINTS+ .@cpoint_amt;
        dispbottom "You receive "+.@cpoint_amt+" Rewardpoints in playing for 12 consecutive hours";
        dispbottom "Current Balance = "+#REWARDPOINTS+" Rewardpoints";
    }
    stopnpctimer;
    initnpctimer;
    
    
    OnInit:
    bindatcmd "rewards",strnpcinfo(3)+"::OnCheck";
    end;
    
    
    OnCheck:
    dispbottom "You have " +#REWARDPOINTS+ " Reward points.";
    end;
    }
    //--End of the Script
×
×
  • Create New...