VladimirCastro Posted July 21, 2014 Group: Members Topic Count: 114 Topics Per Day: 0.03 Content Count: 298 Reputation: 4 Joined: 03/13/12 Last Seen: September 18, 2016 Share Posted July 21, 2014 heres my script //===== rAthena Script ======================================= //= Guild Prize Giveaway //===== By: ================================================== //= AnnieRuru / Mysterious / Joseph //===== Current Version: ===================================== //= 1.7 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= //= Rewards guild masters of castle owners after each //= War of Emperium session. //===== Additional Comments: ================================= //= v1.0 - Intitial Re-release [Mysterious] //= v1.1 - Language structures [Mysterious] //= v1.2 - Added divisions [Mysterious] //= v1.3 - Added proper information [Mysterious] //= v1.4 - Optimized! [Euphy] //= v1.5 - Little bit of cleaning [Mysterious] //= v1.6 - Fixed Agit on/off corruption. [Joseph] //= v1.7 - Fixed overweight issues [Joseph] //============================================================ prontera,163,166,4 script Castle Rewards 871,{ function GetCastle; set .@reward,671,1; //<Item_ID>,<Amount>{,...} set .@n$,"["+strnpcinfo(0)+"]"; mes "Your guild [^0000FF"+getguildname(getcharid(2))+"^000000] has conquered:"; for(set .@i,0;.@i<getarraysize(.Castles$);set .@i,.@i+1) if (getcastledata(.Castles$[.@i],1) == getcharid(2)) { mes " > "+getcastlename(.Castles$[.@i])+""; set .@c,1; setarray .@uh$[getarraysize(.@uh$)],.Castles$[.@i],(1<<.@i); } if (!.@c) { mes " > No castles."; close; } next; if (select(((getguildmasterid(getcharid(2))==getcharid(0))?((agitcheck()||agitcheck2())?"":"Redeem Reward"):"")+":Close")==2) close; mes .@n$; mes "Please select a castle to redeem your guild reward."; for(set .@i,0;.@i<getarraysize(.@uh$);set .@i,.@i+2) set .@m$,.@m$+($castle_reward&(1<<GetCastle(atoi(.@uh$[.@i+1])))?"^0000FF":"^FF0000")+getcastlename(.@uh$[.@i])+"^000000:"; next; set .@m,select(.@m$)-1; if ($castle_reward&(1<<GetCastle(atoi(.@uh$[.@m*2+1])))) { mes .@n$; mes "Here's your reward for conquering ^0000FF"+getcastlename(.@uh$[.@m*2])+"^000000."; mes "You should divide these among your guild members."; for(set .@i,0;.@i<getarraysize(.@reward);set .@i,.@i+1) if (!checkweight(.@reward[.@i],.@reward[.@i+1])) { mes " "; mes "^FF0000Overweight!^000000"; close; } for(set .@i,0;.@i<getarraysize(.@reward);set .@i,.@i+1) getitem .@reward[.@i],.@reward[.@i+1]; set $castle_reward,$castle_reward^(1<<GetCastle(atoi(.@uh$[.@m*2+1]))); close; } mes .@n$; mes "It seems like you've redeemed the reward."; close; function GetCastle { for(set .@j,0;.@j<getarraysize(.Castles$);set .@j,.@j+1) { set .@c1,.@c2|(1<<.@j); if (getarg(0)==.@c1) return .@j; } return -1; } OnAgitEnd: OnAgitEnd2: for(set .@i,0;.@i<getarraysize($WOE_CONTROL);set .@i,.@i+4) if (gettime(4)==$WOE_CONTROL[.@i] && gettime(3)==$WOE_CONTROL[.@i+2] && $castle_reward&(1<<GetCastle($WOE_CONTROL[.@i+3])) == 0) set $castle_reward,$castle_reward|(1<<GetCastle($WOE_CONTROL[.@i+3])); end; OnInit: setarray .Castles$, "prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05", "payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05", "gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05", "aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05", "arug_cas01","arug_cas02","arug_cas03","arug_cas04","arug_cas05", "schg_cas01","schg_cas02","schg_cas03","schg_cas04","schg_cas05"; end; } Quote Link to comment Share on other sites More sharing options...
Normynator Posted July 22, 2014 Group: Developer Topic Count: 7 Topics Per Day: 0.00 Content Count: 292 Reputation: 199 Joined: 05/03/13 Last Seen: May 26, 2023 Share Posted July 22, 2014 Looks like a syntax error, just try to change the "," into a ";" at line 25 and run your script again. Quote Link to comment Share on other sites More sharing options...
VladimirCastro Posted July 22, 2014 Group: Members Topic Count: 114 Topics Per Day: 0.03 Content Count: 298 Reputation: 4 Joined: 03/13/12 Last Seen: September 18, 2016 Author Share Posted July 22, 2014 didnt work.. help pls Quote Link to comment Share on other sites More sharing options...
Normynator Posted July 22, 2014 Group: Developer Topic Count: 7 Topics Per Day: 0.00 Content Count: 292 Reputation: 199 Joined: 05/03/13 Last Seen: May 26, 2023 Share Posted July 22, 2014 (edited) //===== rAthena Script ======================================= //= Guild Prize Giveaway //===== By: ================================================== //= AnnieRuru / Mysterious //===== Current Version: ===================================== //= 1.5 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= //= Rewards guild masters of castle owners after each //= War of Emperium session. //===== Additional Comments: ================================= //= v1.0 - Intitial Re-release [Mysterious] //= v1.1 - Language structures [Mysterious] //= v1.2 - Added divisions [Mysterious] //= v1.3 - Added proper information [Mysterious] //= v1.4 - Optimized! [Euphy] //= v1.5 - Little bit of cleaning [Mysterious] //============================================================ prontera,133,163,4 script Castle Rewards 871,{ mes "[Castle Rewards]"; if (agitcheck() || agitcheck2()) { mes "WoE is currently still in progress."; close; } mes "Please select a castle:"; next; for(set .@i,0; .@i<30; set .@i,.@i+1) set .@menu$, .@menu$+getcastlename(.Castles$[.@i])+":"; set .@i, select(.@menu$)-1; mes "[Castle Rewards]"; if (getcastledata(.Castles$[.@i],1) != getcharid(2)) { mes "You aren't the owner of this castle."; close; } if (getguildmasterid(getcharid(2)) != getcharid(0)) { mes "Only the guild master can claim the reward."; close; } if ($castle_claimed&(1<<.@i)) { mes "You've already claimed this castle's reward!"; close; } mes "Here's your reward for conquering "+getcastlename(.Castles$[.@i])+"."; set $castle_claimed, $castle_claimed | (1<<.@i); getitem 7539,300; //Set your prize here! close; OnAgitEnd: set $castle_claimed, 0; end; OnInit: setarray .Castles$[0], "prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05", "payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05", "gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05", "aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05", "arug_cas01","arug_cas02","arug_cas03","arug_cas04","arug_cas05", "schg_cas01","schg_cas02","schg_cas03","schg_cas04","schg_cas05"; end; } try this script, check franciscos answer Edited July 23, 2014 by Normynator Quote Link to comment Share on other sites More sharing options...
Francisco Posted July 23, 2014 Group: Members Topic Count: 3 Topics Per Day: 0.00 Content Count: 19 Reputation: 3 Joined: 05/27/12 Last Seen: June 1, 2017 Share Posted July 23, 2014 (edited) set .@reward,671,1; The problem your mapserv described is a simple bad setting of the .@reward variable. It gives error because it doesn't expect a second argument (,1) on that command. Are you trying to set a variable or an array? Because later on you read .@reward as an array . In that case, an array is set like setarray .@reward[0],1; Where [0] is the position and 1 the value and so on. It seems the array is used like this in your script : Item id, amount so try this setarray .@reward[0],671,1; Edited July 23, 2014 by Francisco 1 Quote Link to comment Share on other sites More sharing options...
Question
VladimirCastro
heres my script
Link to comment
Share on other sites
4 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.