Jump to content
  • 0

Need some help


teknical

Question


  • Group:  Members
  • Topic Count:  13
  • Topics Per Day:  0.00
  • Content Count:  34
  • Reputation:   0
  • Joined:  11/13/15
  • Last Seen:  

Hi guys,

I'm using Stolaos daily reward script and I'm having problem with the #CASHPOINT edit I made to the file.  

The error I get is this:

[Warning]: Unexpected type for argument 1. Expected string.
[Debug]: Data: variable name='#CASHPOINTS' index=0
[Debug]: Function: setd

 

Also players only get the set zeny and cashpoints but nothing else. They don't get the items set in the script.

Spoiler

//===== EinherjarRO Scripts ================================== 
//= Daily Rewards
//===== By: ================================================== 
//= Stolao
//===== Current Version: ===================================== 
//= 1.8C
//===== Compatible With: ===================================== 
//= rAthena SVN
//===== Description: ========================================= 
//= A reward system for players who play more frequently
//===== Todo: ================================================
//= Maybe make .MinWait an array mins,days,weeks,months,years;
//= Make Logging out then it continue count
//= Seperate Timer from script for optional go collect reward
//= Remove use of sleep2
//= Suggestions?
//===== Additional Comments: =================================
//= For Older See Old Versions
//= 1.7C Added custom item binding mode [Secretdataz]
//= 1.7D Added cutin for next day option + command
//= 1.7E Added IP Check
//= 1.7F Moved .Rest Message to after .MinWait Check
//= 1.80 Added MacAddress check for those using Gepard Shield (disabled by default)
//= 1.81 Fixed Typo in .MacCheck
//= 1.82 Moved .Rest Check before rewards check to prevent bug
//= 1.83 Added strnpcinfo(3) for bindatcomands
//= 1.84 Rephrased some conf settings
//= 1.85 Fixed Capilazation
//= 1.86 Small Tabulation Tweaks
//= 1.87 Noted Changes to Reward Farmatting
//= 1.88 Added 'fixreward' Command for those who get negative wait times ( not sure of issues still)
//= 1.89 Changed soeme Messaging Formatting
//= 1.8A Made Fix Command GM 99 Only, to use on others do '#fixreward'
//= 1.8B Added Overwieght Collection
//= 1.8C Added 'collectreward', 'collectdaily' and 'dailyreward' commands
//===== Contact Info: ========================================
//= [Stolao] 
//= Email: [email protected]
//============================================================
-    script    LOGIN    -1,{
OnWhisperGlobal:
OnLoginCmnd:
OnPCLoginEvent:
    .@i = (gettime(7) * 365 * 24 * 60) + (gettime(8) * 24 * 60) + (gettime(3) * 60) + gettime(2);
    if(.@i >= (#LastDailyReward + .MinWait) && .Rest){
        message strcharinfo(0),"[Daily Rewards]: To collect reward you must remain logged in for "+ .Rest +" minutes";
        sleep2 1000 + .Rest * 60000;
    }
    if(.@i >= (#LastDailyReward + .MinWait)){
        if(checkvending() & 2 && .Mode & 64){
            message strcharinfo(0),"[Daily Rewards]: Venders cannot recive rewards.";
            end;
        }
        if(.@i < #LastDailyReward + .MaxWait)
            #DRewardCon += 1;
        else    #DRewardCon = 1;
        .@size = getarraysize(.Rewards$);
        if(#DRewardCon >= .@size){
            if(.Reset)
                #DRewardCon = 1;
            else    #DRewardCon = .@size-1;
        }
        explode(.@XT$,.Rewards$[#DRewardCon],",");
        .@size = getarraysize(.@XT$);
        for(.@x = 0; .@x < .@size; .@x++)
            .@TT[.@x] = atoi(.@XT$[.@x]);
        if(.Mode & 1 && .@TT[4] > 0){
            .@size = getarraysize(.@TT);
            for(.@x = 4; .@x <= .@size - 1 ; .@x += 2){
                .@itms[.@y] = .@TT[.@x];
                .@qnts[.@y] = .@TT[.@x + 1];
                .@y++;
            }
        }
        if(.Mode & 16)
            cutin .Cutins$[#DRewardCon],4;
        if(.Mode & 2){
            if(.@TT[0]){
                zeny += .@TT[0];
                message strcharinfo(0),"[Daily Rewards]: Recieved "+ .@TT[0] +"z";
            }
            if(.@TT[1]){
                setd getd(.Points$[0]),getd(.Points$[0]) + .@TT[1];
                message strcharinfo(0),"[Daily Rewards]: Recieved "+ .@TT[1] +" "+.Points$[1];
            }
        }
        if(.Mode & 4 && (.@TT[3] || .@TT[4]))
            getexp .@TT[3], .@TT[4];
        if(.Mode & 8){
            .@size = getarraysize(.BuffInfo);
            for(.@x = 0; .@x < .@size; .@x += 4){
                if(#DRewardCon % .BuffInfo[.@x + 1] == 0)
                    sc_start .BuffInfo[.@x], .BuffInfo[.@x + 2] * 60000, .BuffInfo[.@x + 3];
            }
        }
        message strcharinfo(0),"[Daily Rewards]: You have collected your daily reward, for "+callfunc("F_InsertPlural",#DRewardCon,"day")+" now.";
        #LastDailyReward = (gettime(7) * 365 * 24 * 60) + (gettime(8) * 24 * 60) + (gettime(3) * 60) + gettime(2) - .Rest;
        end;
    }
OnNextCmnd:
    if(!.@i) .@i = (gettime(7) * 365 * 24 * 60) + (gettime(8) * 24 * 60) + (gettime(3) * 60) + gettime(2) - .Rest;
    if(#LastDailyReward + .MinWait - .@i < 0){
        message strcharinfo(0),"[Daily Rewards]: Your rewards should be available.";
    } else {
        .@days = (#LastDailyReward + .MinWait - .@i) / 60 / 24;
        .@hours = ((#LastDailyReward + .MinWait - .@i) / 60) % 24;
        .@mins = (#LastDailyReward + .MinWait - .@i) % 60;
        message strcharinfo(0),"[Daily Rewards]: You have "+ ((.@days) ? .@days +" Days " : "") + ((.@hours) ? .@hours +" Hours " : "") + ((.@mins) ? .@mins +" Minutes " : "") +"till your next reward.";
        if(.Mode & 128){
            set .@size,getarraysize(.Rewards$);
            if(#DRewardCon + 1 >= .@size){
                if(.Reset) .@g = 1;
                else       .@g = .@size-1;
            } else           .@g = #DRewardCon + 1;
            cutin .Cutins$[.@g],4;
        }
    }
    end;
OnFixCmnd:
    #LastDailyReward = (gettime(7) * 365 * 24 * 60) + (gettime(8) * 24 * 60) + (gettime(3) * 60) + gettime(2);
    message strcharinfo(0),"[Daily Rewards]: Next reward has been forcively reset.";
    .@days = .MinWait / 60 / 24;
    .@hours = .MinWait / 60 % 24;
    .@mins = .MinWait % 60;
    message strcharinfo(0),"[Daily Rewards]: You have "+ ((.@days) ? .@days +" Days " : "") + ((.@hours) ? .@hours +" Hours " : "") + ((.@mins) ? .@mins +" Minutes " : "") +"till your next reward.";
    end;
OnInit:
    // Basic Settings
    //   1: Item | 2: Points | 4: Exp  
    //   8: Gain Buffs Every X Consecutive Days logged in
    //   16: Show Cutins | 32: Bound Items
    //   64: No Rewards ffor Autotraders
    //   128: Show Next Day Cutin
    //     (a bit value, e.g. 3 = Items & Points from Multi)
    .Mode = 1|2|4|8|16|64;

    // Item Binding Mode
    //     Bound_Account : Account Bound item
    //     Bound_Guild   : Guild Bound item
    //     Bound_Party   : Party Bound item
    //     Bound_Char    : Character Bound item
    .Bound_Mode = Bound_Account;
    
    // To disable the command '@loginreward' comment the next lines
    // * Needs extra commands for typos
    bindatcmd("relog",strnpcinfo(3)+"::OnLoginCmnd",0,99);
    bindatcmd("collectreward",strnpcinfo(3)+"::OnLoginCmnd",0,99);
    bindatcmd("dailyreward",strnpcinfo(3)+"::OnLoginCmnd",0,99);
    bindatcmd("collectdaily",strnpcinfo(3)+"::OnLoginCmnd",0,99);
    bindatcmd("nextreward",strnpcinfo(3)+"::OnNextCmnd",0,99);

    // GM Command to fix the negative time till reward issue
    // #fixreward <playername>
    // * Needs extra commands for typos
    bindatcmd("fixreward",strnpcinfo(3)+"::OnFixCmnd",99,99);

    // Minimum minutes between collecting daily reward
    //   Day: 22*60 - 24*60
    //   Week: 10080
    .MinWait = 1320;

    // Minutes before losing the consecutive reward
    //   Day: 48*60 - 50*60
    //   Week: 20160
    .MaxWait = 3000;

    // What to do upon reaching last day defined
    //   [0] Repeat last day
    //   [1] Restart at 1
    .Reset = 1;

    // Number of mins after logging before collecting prize
    .Rest = 0;

    // Point Type
    //   [0] Points earned
    //   [1] Point name in mes
    setarray .Points$,"#CASHPOINTS","Cash Points";

    // Consecutive Days Buff
    // Each buff contains 4 variables (32 Total Max)
    // <Type>,<Days>,<Duration>,<Rate>, // Buff 1
    // <Type>,<Days>,<Duration>,<Rate>, // Buff 2
    //   ...;
    //
    //  Example: 188,7,45,3
    //    -Every 7th consecutive day logged in Player gains +3 Str for 45 mins
    //
    //  Type is 188, which references which SC_ to use, SC_INCSTR in this example
    //     -For a full list of SC_ visit the db/const.txt
    //  Days is days buff is applied, in this example 7, so every 7th day, 14,21,28....
    //  Duration is buff duration is Minuits, in this example 45 mins
    //  Rate is buff strength, in this example player gains 3 Str
    setarray .BuffInfo    ,260,2,360,1    // Life Insurance for 360 Mins Every 2nd Day
                ,198,3,120,10    // +10% Hp for 120 Mins Every 3th Day
                ,196,5,120,25    // +25 Flee for 120 Mins Every 5th Day
                ,257,7,240,50;    // +50% Exp for 240 Mins Every 7th Day

    // Daily Prize items (max 128 days):
    //   "<Zeny>,<Points>,<BaseExp>,<JobExp>,<itemID-1>,<amount-1>,<itemID-2>,<amount-2>...etc", // Day 1
    //   "<Zeny>,<Points>,<BaseExp>,<JobExp>,<itemID-1>,<amount-1>,<itemID-2>,<amount-2>...etc"  // Day 2
    //   ...;
    // Total length of any days string must be 255 or shorter
    // * If players login longer than the last set
    //   day, they will keep getting the last prize.
    setarray .Rewards$[1],
        "10000,25,0,0,12210,1,14533,1,608,25",
        "10000,25,0,0,12210,1,14533,1,608,25",
        "10000,25,0,0,12210,1,14533,1,608,25",
        "10000,50,0,0,12210,2,14533,2,608,50";

    // Cutin Array
    //    Shows a cuting for each date
    //    
    setarray .Cutins$[1],
            "kafra_01",
            "kafra_02",
            "kafra_03",
            "kafra_04",
end;
}
 

 

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

  • Group:  Developer
  • Topic Count:  48
  • Topics Per Day:  0.01
  • Content Count:  1443
  • Reputation:   337
  • Joined:  10/17/12
  • Last Seen:  

I have released a new version update

Link to comment
Share on other sites

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.

×
×
  • Create New...