justeyngonzales Posted June 3, 2013 Share Posted June 3, 2013 How to script this in hte woe_controller.txt. The Item ID is 20242 (50x) and 20244 (25x) Quote Link to comment Share on other sites More sharing options...
Anakid Posted June 3, 2013 Share Posted June 3, 2013 //===== 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 [email protected],671,1; //<Item_ID>,<Amount>{,...} set [email protected]$,"["+strnpcinfo(0)+"]"; mes "Your guild [^0000FF"+getguildname(getcharid(2))+"^000000] has conquered:"; for(set [email protected],0;[email protected]<getarraysize(.Castles$);set [email protected],[email protected]+1) if (getcastledata(.Castles$[[email protected]],1) == getcharid(2)) { mes " > "+getcastlename(.Castles$[[email protected]])+""; set [email protected],1; setarray [email protected]$[getarraysize([email protected]$)],.Castles$[[email protected]],(1<<[email protected]); } if ([email protected]) { mes " > No castles."; close; } next; if (select(((getguildmasterid(getcharid(2))==getcharid(0))?((agitcheck()||agitcheck2())?"":"Redeem Reward"):"")+":Close")==2) close; mes [email protected]$; mes "Please select a castle to redeem your guild reward."; for(set [email protected],0;[email protected]<getarraysize([email protected]$);set [email protected],[email protected]+2) set [email protected]$,[email protected]$+($castle_reward&(1<<GetCastle(atoi([email protected]$[[email protected]+1])))?"^0000FF":"^FF0000")+getcastlename([email protected]$[[email protected]])+"^000000:"; next; set [email protected],select([email protected]$)-1; if ($castle_reward&(1<<GetCastle(atoi([email protected]$[[email protected]*2+1])))) { mes [email protected]$; mes "Here's your reward for conquering ^0000FF"+getcastlename([email protected]$[[email protected]*2])+"^000000."; mes "You should divide these among your guild members."; for(set [email protected],0;[email protected]<getarraysize([email protected]);set [email protected],[email protected]+1) if (!checkweight([email protected][[email protected]],[email protected][[email protected]+1])) { mes " "; mes "^FF0000Overweight!^000000"; close; } for(set [email protected],0;[email protected]<getarraysize([email protected]);set [email protected],[email protected]+1) getitem [email protected][[email protected]],[email protected][[email protected]+1]; set $castle_reward,$castle_reward^(1<<GetCastle(atoi([email protected]$[[email protected]*2+1]))); close; } mes [email protected]$; mes "It seems like you've redeemed the reward."; close; function GetCastle { for(set [email protected],0;[email protected]<getarraysize(.Castles$);set [email protected],[email protected]+1) { set [email protected],[email protected]|(1<<[email protected]); if (getarg(0)[email protected]) return [email protected]; } return -1; } OnAgitEnd: OnAgitEnd2: for(set [email protected],0;[email protected]<getarraysize($WOE_CONTROL);set [email protected],[email protected]+4) if (gettime(4)==$WOE_CONTROL[[email protected]] && gettime(3)==$WOE_CONTROL[[email protected]+2] && $castle_reward&(1<<GetCastle($WOE_CONTROL[[email protected]+3])) == 0) set $castle_reward,$castle_reward|(1<<GetCastle($WOE_CONTROL[[email protected]+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; } 1 Quote Link to comment Share on other sites More sharing options...
Euphy Posted June 3, 2013 Share Posted June 3, 2013 setarray .Reward[0],20242,50,20244,25; 1 Quote Link to comment Share on other sites More sharing options...
justeyngonzales Posted June 3, 2013 Author Share Posted June 3, 2013 setarray .Reward[0],20242,50,20244,25; Uhm sir Euphy ? Can I paste this to the woe_controller.txt ? Quote Link to comment Share on other sites More sharing options...
Critica Posted June 3, 2013 Share Posted June 3, 2013 no, you paste that up to anakin's scriptthis s et [email protected],671,1; //<Item_ID>,<Amount>{,...} to this setarray .Reward[0],20242,50,20244,25; Quote Link to comment Share on other sites More sharing options...
Euphy Posted June 3, 2013 Share Posted June 3, 2013 That was actually for my controller (if you look at the variable type). // Rewards per castle. // -- when given directly: <itemID>,<amount>{,<itemID>,<amount>,...} // -- via mail (option 2): <itemID>,<amount>,<Zeny> setarray .Reward[0],14001,1; Quote Link to comment Share on other sites More sharing options...