-
Posts
232 -
Joined
-
Last visited
-
Days Won
1
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Everything posted by nasagnilac
-
I get it now. you want me to combine it to the another module instead of using its as an addson
-
Even I put this to submenu still no good. /?module=account&action=freebies 'MenuItems' => array( 'Other' => array( 'Freebies' => array( 'module' => 'freebies') ) ), 'SubMenuItems' => array( 'freebies' => array( 'index'=> 'Redeem', 'list' => 'List', 'add' => 'Add', //'edit' => 'Edit', //'del' => 'Delete', ) ),
-
Hi I just install this addson to my website. http://rathena.org/board/files/file/2799-freebies-for-fluxcp-free/ My problem is I cant put a new submenu beside the Change Password. Menu: View Account | Change Password | Change E-mail | Change Gender | Transfer Credits | Credit Transfer History | Go to Shopping Cart I just want to add the Freebies Submenu here. But I dont know how..
-
Hi I just want to know how can I combine this scripts? //===== eAthena Script ======================================= //= Euphy's Quest Shop //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.4a - eAthena //===== Description: ========================================= //= A dynamic quest shop based on Lunar's, with easier config. //= Includes support for multiple shops & cashpoints. //= Item Preview script by ToastOfDoom. //============================================================ mellina,63,62,6 script Quest Board 857,{ function Add; function Chk; function Slot; function A_An; if(.Shops$ != "") set .@i,1; else { set .@menu$,""; for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) set .@menu$, .@menu$+.Shops$[.@i]+":"; set .@i, select(.@menu$); } dispbottom "Select one item at a time."; callshop "qshop"+.@i,1; npcshopattach "qshop"+.@i; end; function Add { if (getitemname(getarg(1))=="null") { debugmes "Quest reward #"+getarg(1)+" invalid (skipped)."; return; } for(set .@n,5; .@n<127; set .@n,.@n+2) { if (!getarg(.@n,0)) break; if (getitemname(getarg(.@n))=="null") { debugmes "Quest requirement #"+getarg(.@n)+" invalid (skipped)."; return; } } for(set .@i,2; .@i<.@n; set .@i,.@i+1) set getd(".q_"+getarg(1)+"["+(.@i-2)+"]"), getarg(.@i); npcshopadditem "qshop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0); sleep 1; return; } function Chk { if (getarg(0)<getarg(1)) { set @qe0,1; return "^FF0000"; } else return "^00FF00"; } function Slot { set .@s$,getitemname(getarg(0)); switch(.ShowSlot){ case 1: if (!getitemslots(getarg(0))) return .@s$; case 2: if (getiteminfo(getarg(0),11)>0) return .@s$+" ["+getitemslots(getarg(0))+"]"; default: return .@s$; } } function A_An { setarray .@A$[0],"a","e","i","o","u"; set .@B$, "_"+getarg(0); for(set .@i,0; .@i<5; set .@i,.@i+1) if (compare(.@B$,"_"+.@A$[.@i])) return "an "+getarg(0); return "a "+getarg(0); } OnBuyItem: set .@q[0],@bought_nameid; copyarray .@q[1],getd(".q_"+@bought_nameid+"[0]"),getarraysize(getd(".q_"+@bought_nameid+"[0]")); if (!.@q[1]) { message strcharinfo(0),"An error has occurred."; end; } mes "[Quest Board]"; mes "Reward: ^0055FF"+((.@q[1]>1)?.@q[1]+"x ":"")+Slot(.@q[0])+"^000000"; mes "Requirements:"; if (.@q[2]) mes " > "+Chk(Zeny,.@q[2])+.@q[2]+" Zeny^000000"; if (.@q[3]) mes " > "+Chk(getd(.Points$[0]),.@q[3])+.@q[3]+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+.@q[3]+")^000000"; if (.@q[4]) for(set .@i,4; .@i<getarraysize(.@q); set .@i,.@i+2) mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1])+((.DisplayID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+.@q[.@i+1]+")^000000"; next; set @qe1, getiteminfo(.@q[0],5); set @qe2, getiteminfo(.@q[0],11); addtimer 1000, strnpcinfo(1)+"::OnEnd"; while(1){ switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((((@qe1&1) || (@qe1&256) || (@qe1&512)) && @qe2>0 && !@qe6)?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) { case 1: if (@qe0) { mes "[Quest Board]"; mes "You're missing one or more quest requirements."; close; } if (!checkweight(.@q[0],.@q[1])) { mes "[Quest Board]"; mes "^FF0000You need "+(((.@q[1]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000"; close; } if (.@q[2]) set Zeny, Zeny-.@q[2]; if (.@q[3]) setd .Points$[0], getd(.Points$[0])-.@q[3]; if (.@q[4]) for(set .@i,4; .@i<getarraysize(.@q); set .@i,.@i+2) delitem .@q[.@i],.@q[.@i+1]; getitem .@q[0],.@q[1]; if (.Announce) announce strcharinfo(0)+" has created "+A_An(getitemname(.@q[0]))+"!",0; specialeffect2 699; close; case 2: set @qe3, getlook(3); set @qe4, getlook(4); set @qe5, getlook(5); if (@qe1&1) atcommand "@changelook 3 "+@qe2; if (@qe1&256) atcommand "@changelook 1 "+@qe2; if (@qe1&512) atcommand "@changelook 2 "+@qe2; set @qe6,1; break; case 3: close; } } OnEnd: if (@qe6) { atcommand "@changelook 3 "+@qe3; atcommand "@changelook 1 "+@qe4; atcommand "@changelook 2 "+@qe5; } for(set .@i,0; .@i<7; set .@i,.@i+1) setd "@qe"+.@i,0; end; OnInit: // --------------------- Config --------------------- // Custom points, if needed: "<variable>","<name to display>" setarray .Points$[0],"#CASHPOINTS","Cash Points"; set .Announce,1; // Announce quest completion? (1: yes / 0: no) set .ShowSlot,2; // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never) set .DisplayID,0; // Show item IDs? (1: yes / 0: no) set .ShowZeny,0; // Show Zeny cost, if any? (1: yes / 0: no) // Shop categories, if needed: "<Shop 1>","<Shop 2>"{,...}; // Duplicate dummy data for any additional shops (bottom of script). // If no categories, use the second line instead (remove //). setarray .Shops$[1],"Headgear's [Set A]","Headgear's [Set B]"; //set .Shops$,"n/a"; // Add(<shop number>,<reward ID>,<reward amount>,<Zeny cost>,<point cost>, // <required item ID>,<required item amount>{,...}); // Shop number corresponds with order above (default is 1). // Note: Do NOT use a reward item more than once! //A Add(1,5137,1,1000000,0,4253,1,5141,1,661,10,25001,3); Add(1,5766,1,4000000,0,7107,250,7106,250,25001,3); Add(1,5132,1,7500000,0,5035,1,5074,1,25001,3); Add(1,5490,1,7500000,0,1045,200,1009,25,724,25,7442,25,25001,3); Add(1,5513,1,7500000,0,2235,1,995,200,7446,200,25001,3); Add(1,5512,1,7500000,0,5124,1,995,200,7446,200,25001,3); Add(1,5319,1,3000000,0,5035,1,978,2,2254,1,25001,3); Add(1,5546,1,7500000,0,2235,1,994,200,730,100,25001,3); Add(1,5545,1,7500000,0,5124,1,994,200,730,100,25001,3); Add(1,5505,1,3000000,0,7568,200,982,2,1022,100,1038,50,25001,3); Add(1,5312,1,7500000,0,7567,300,983,1,1005,50); //B Add(1,5491,1,4500000,0,2221,1,2336,1,724,50,25001,3); Add(1,5147,1,3000000,0,2227,1,978,1,1057,300,25001,3); Add(1,5382,1,7500000,0,969,10,10016,1,5083,1,25001,3); Add(1,5129,1,3000000,0,604,100,916,200,25001,3); Add(1,5183,1,3000000,0,604,100,916,200,25001,3); Add(1,5427,1,3000000,0,6021,200,7567,200,2221,1,983,1,981,1,4127,1,25001,3); Add(1,5102,1,3000000,0,7263,100,2276,1,2239,2,982,5,25001,3); Add(1,5773,1,6000000,0,5172,1,978,5,25001,3); Add(1,5404,1,7500000,0,5085,1,978,3,981,3,25001,3); Add(1,5800,1,20000000,0,5040,1,924,300,739,50,25001,3); Add(1,5398,1,4500000,0,1035,100,1036,100,7451,5,25001,3); Add(1,5378,1,7500000,0,2241,1,5045,1,975,1,740,200,25001,3); //C Add(1,5414,1,3000000,0,7098,50,604,50,1019,50,994,20,25001,3); Add(1,5582,1,7500000,0,2235,1,991,200,7446,200,25001,3); Add(1,5581,1,7500000,0,5124,1,991,200,7446,200,25001,3); Add(1,5744,1,7500000,0,2235,1,993,200,7445,200,25001,3); Add(1,5745,1,7500000,0,5124,1,993,200,7445,200,25001,3); Add(1,5184,1,4500000,0,5120,5,995,100,983,1,25001,3); Add(1,5283,1,4500000,0,916,300,7063,100,4117,1,25001,3); Add(1,5478,1,3000000,0,980,5,2221,1,25001,3); Add(1,5131,1,7500000,0,7095,100,6090,100,999,100,2228,1,25001,3); Add(1,5260,1,3000000,0,975,5,2221,1,4235,1,25001,3); Add(1,5142,1,4500000,0,5172,1,1234,1,25001,3); Add(1,5135,1,3000000,0,5104,1,969,1,975,1,980,5,999,250,25001,3); //D Add(1,5655,1,7500000,0,5347,1,975,1,981,1,983,1,7169,3,25001,3); Add(1,5254,1,4500000,0,2221,1,981,3,983,1,2255,1,1039,50,25001,3); Add(1,5298,1,2000000,0,1021,300,7268,1,25001,3); Add(1,5258,1,3000000,0,1021,100,978,1,976,1,975,1,10003,1,25001,3); Add(1,5296,1,4500000,0,976,1,1022,200,754,5,25001,3); Add(1,5211,1,1050000,0,10007,1,5045,1,25001,3); //E Add(1,5304,1,7500000,0,7017,5,2288,1,981,1,983,1,25001,3); Add(1,5470,1,7500000,0,2295,1,981,1,982,1,25001,3); //F Add(1,5276,1,4500000,0,982,1,981,1,975,1,4044,1,25001,3); Add(1,5380,1,4500000,0,1054,20,1023,100,579,200,25001,3); Add(1,5403,1,4500000,0,579,200,1023,100,624,50,25001,3); Add(1,5317,1,6000000,0,5120,2,976,5,1059,100,25001,3); Add(1,5447,1,4500000,0,918,300,1061,100,25001,3); Add(1,5390,1,3000000,0,2236,2,978,1,1034,100,998,30,25001,3); //G Add(1,5361,1,7500000,0,7216,1000,10019,1,25001,3); Add(1,5377,1,20000000,0,2268,1,7035,20,25001,3); Add(1,5570,1,7500000,0,2235,1,996,100,7445,100,25001,3); Add(1,5569,1,7500000,0,5124,1,996,100,7445,100,25001,3); Add(1,5476,1,7500000,0,7101,300,2210,1,25001,3); Add(1,5660,1,9000000,0,7048,30,25001,3); Add(1,5544,1,3000000,0,6021,100,7567,100,2221,1,979,1,25001,3); //H Add(1,5273,1,4500000,0,979,1,975,1,982,1,25001,3); Add(1,5181,1,6000000,0,7754,1,25001,3); Add(1,5467,1,9000000,0,1036,100,7123,100,1037,100,7451,5,25001,3); Add(1,5139,1,3000000,0,748,100,5061,1,25001,3); Add(1,5225,1,1200000,0,2261,1,978,1,7063,50,983,1,25001,3); Add(1,5383,1,7500000,0,979,1,7445,150,1059,100,25001,3); //I Add(1,5610,1,7500000,0,5074,1,995,50,25001,3); Add(1,5500,1,15000000,0,536,500,25001,3); //J Add(1,5371,1,2000000,0,7445,7,7446,7,7447,7,7448,7,945,100,983,1,733,5,25001,3); //K Add(1,5143,1,7500000,0,1034,500,982,1,25001,3); Add(1,5426,1,3000000,0,6021,100,7567,100,2221,1,980,5,975,5,25001,3); Add(1,5291,1,4500000,0,7323,500,25001,3); //L Add(1,5555,1,4500000,0,521,200,7298,100,4195,1,25001,3); Add(1,5418,1,7500000,0,5016,1,1098,200,975,5,1004,10,25001,3); Add(1,5588,1,7500000,0,2235,1,994,100,7446,100,25001,3); Add(1,5589,1,7500000,0,5124,1,994,100,7446,100,25001,3); Add(1,5662,1,7500000,0,2235,1,6075,100,7445,200,25001,3); Add(1,5663,1,7500000,0,5124,1,6075,100,7445,200,25001,3); Add(1,5422,1,3000000,0,1550,2,1006,5,25001,3); Add(1,5130,1,3000000,0,1048,100,7564,150,517,50,25001,3); Add(1,5489,1,4500000,0,994,100,976,1,5016,1,25001,3); Add(1,5562,1,7500000,0,2206,1,1059,200,7751,200,25001,3); //M Add(2,5365,1,2250000,0,574,150,7031,150,25001,3); Add(1,5503,1,7500000,0,5045,1,2214,1,25001,3); Add(2,5275,1,4500000,0,975,1,982,2,981,1,25001,3); Add(2,5402,1,6000000,0,2286,1,6395,25,25001,3); Add(2,5214,1,7500000,0,1022,500,2221,1,25001,3); //N Add(2,5442,1,7500000,0,7166,100,978,2,25001,3); Add(2,5502,1,4500000,0,2532,1,7752,100,25001,3); Add(2,5099,1,7500000,0,7197,300,7171,300,949,100,25001,3); Add(2,5362,1,7500000,0,4230,1,618,1000,25001,3); Add(2,5469,1,4500000,0,2221,1,975,1,976,1,7063,50,25001,3); Add(2,5151,1,7500000,0,5001,1,978,1,991,200,25001,3); //O Add(2,5315,1,6000000,0,2239,1,25001,3); Add(2,5554,1,4500000,0,962,100,1024,100,25001,3); //P Add(2,5468,1,7500000,0,1059,300,5172,2,2244,1,25001,3); Add(2,5519,1,2000000,0,7115,200,2229,1,7441,25,7440,25,25001,3); Add(2,5358,1,2000000,0,7101,150,5074,1,25001,3); Add(2,5305,1,7500000,0,2287,1,5096,1,2265,1,6091,1,982,5,7063,100,25001,3); Add(2,5515,1,7500000,0,2235,1,1023,200,991,100,25001,3); Add(2,5514,1,7500000,0,5124,1,1023,200,991,100,25001,3); Add(2,5413,1,4500000,0,1026,200,4098,1,25001,3); Add(2,5352,1,2000000,0,5035,1,979,1,938,100,25001,3); Add(2,5495,1,6000000,0,7063,50,5074,1,25001,3); Add(2,5182,1,7500000,0,5008,1,5118,1,1060,100,25001,3); Add(2,5409,1,7500000,0,981,1,5075,1,25001,3); //R Add(2,5795,1,4500000,0,5045,1,975,1,982,1,25001,3); Add(2,5435,1,4500000,0,6021,100,7567,100,2221,1,975,5,4127,1,25001,3); Add(2,5690,1,6000000,0,5172,1,2254,1,975,1,7166,120,25001,3); Add(2,5208,1,3000000,0,1550,1,1556,1,4185,1,25001,3); Add(2,5206,1,4500000,0,2269,1,982,1,2207,10,25001,3); //S Add(2,5739,1,7500000,0,2235,1,994,50,969,3,25001,3); Add(2,5740,1,7500000,0,5124,1,994,50,969,3,25001,3); Add(2,5524,1,7500000,0,2227,1,7567,100,25001,3); Add(2,5523,1,9500000,0,710,50,5123,1,2614,1,25001,3); Add(2,5381,1,7500000,0,741,1,9001,1,2236,1,25001,3); Add(2,5212,1,4500000,0,5011,1,2210,1,25001,3); Add(2,5548,1,3000000,0,2269,5,25001,3); Add(2,5676,1,7500000,0,2235,1,993,100,7448,100,904,100,25001,3); Add(2,5677,1,7500000,0,5124,1,993,100,7448,100,904,100,25001,3); Add(2,5397,1,7500000,0,7325,5,2205,1,7355,1,25001,3); Add(2,5355,1,2000000,0,1059,200,978,1,25001,3); Add(2,5665,1,2000000,0,2255,1,975,1,5045,1,25001,3); Add(2,5508,1,4500000,0,991,150,2221,1,963,50,25001,3); Add(2,5274,1,3000000,0,976,3,980,3,25001,3); Add(2,5592,1,9000000,0,7441,100,5085,1,25001,3); Add(2,5667,1,9500000,0,2502,1,983,1,7005,100,25001,3); Add(2,5465,1,2000000,0,2221,1,978,1,7441,1,7440,1,7063,1,25001,3); Add(2,5761,1,7500000,0,754,200,2213,1,919,1,25001,3); Add(2,5354,1,4500000,0,2217,1,983,1,25001,3); Add(2,5257,1,7500000,0,2254,1,2282,1,7064,100,969,5,25001,3); Add(2,5509,1,7500000,0,4226,1,2244,5,25001,3); Add(2,5456,1,9000000,0,2221,1,976,1,980,1,2209,1,25001,3); //T Add(2,5550,1,7500000,0,2235,1,997,50,7106,100,7448,200,5066,1,25001,3); Add(2,5549,1,7500000,0,5124,1,997,50,7106,100,7448,200,5066,1,25001,3); Add(2,5098,1,4500000,0,1029,100,2297,1,7267,50,25001,3); Add(2,5395,1,7500000,0,983,2,978,2,5045,1,981,2,25001,3); Add(2,5611,1,3000000,0,967,300,25001,3); Add(2,5384,1,3000000,0,5390,1,975,1,25001,3); Add(2,5187,1,9500000,0,5085,1,7166,250,25001,3); //U Add(2,5256,1,7500000,0,7510,1,2210,1,7063,50,25001,3); Add(2,5289,1,3000000,0,7142,50,25001,3); Add(2,5598,1,7500000,0,2235,1,997,50,726,50,1049,200,25001,3); Add(2,5599,1,7500000,0,5124,1,997,50,726,50,1049,200,25001,3); //W Add(2,5579,1,13500000,0,7446,100,6089,100,2280,1,25001,3); Add(2,5557,1,7500000,0,4257,1,7206,100,25001,3); Add(2,5498,1,13500000,0,7030,400,626,5,5075,1,25001,3); //X //Y Add(2,5385,1,3000000,0,753,1,4044,1,25001,3); //Z // -------------------------------------------------- for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) npcshopdelitem "qshop"+.@i,909; end; } // -------- Dummy data (duplicate as needed) -------- - shop qshop1 -1,909:-1 - shop qshop2 -1,909:-1 - shop qshop3 -1,909:-1 - shop qshop4 -1,909:-1 Its not realy combine I just want this script below will reward the player a ramdom headgear from that quest board. - script AutoFunEvent -1,{ OnClock2100: while(1) { query_sql "select account_id from `char` where online = 1 order by rand() limit 1", .@aid; attachrid .@aid; if(CheckVending()) { DetachRID(); continue; } announce strcharinfo(0) +" won a [10x Poring Coin] in the Lucky Pick Event every 3 hours.", 0; getitem 7539,10; break; } end; }
-
for( set .@i, 0; .@i < getarraysize(.@Gitem); set .@i, .@i + 1 ){ set .@am,.@GAmount[.@i] * .greward; getitem .@Gitem[.@i],.@am; } if ($@members > 14){ for( set .@i, 0; .@i < getarraysize(.@Aitem); set .@i, .@i + 1 ){ set .@amm,.@AAmount[.@i] * .areward; getitem .@Aitem[.@i],.@amm; } } //Directly stored in the guild master storage. setarray .@Gitem[0], 14003, 13995, 14004, 13989, 13414, 5170, 2701, 2624, 2729, 2285; //Item Number setarray .@GAmount[0], 25, 25, 25, 25, 1, 1, 1, 2, 2, 2; //Amount //Additional Items for 15+ Members that will directly stored in the guild master inventory. setarray .@Aitem[0], 1228, 5518, 5137, 5423; //Item Number setarray .@AAmount[0], 1, 1, 1, 1; //Amount if($@members > 0 && $@members < 10) {set .@greward,1;} else if ($@members > 9 && $@members < 15){set .@greward,2;} else if ($@members > 14 && $@members < 20) { set .@greward,3; set .@areward,1; } else if ($@members > 19 && $@members < 25) { set .@greward,4; set .@areward,2; } else if ($@members == 25) { set .@greward,5; set .@areward,3; } Hi I have this codes but on the first code I dont receive any items from array. can you help me?
-
I guess I need a source code.. because im using ramod
-
there is a lot of bug in my server...includes the skills. First the safety wall is not working monster can still damage me while I'm inside the wall. Then next the Flying Side Kick Skill its consume the sp but there is nothing happen. Next is Phenuma Skill range character can still damage players inside the Phenuma Skill..Then the Lex Aeterna Skill is also not working.. Is there anyone know a revision that this skills are fix?
-
Hi guys... Im having problem with this code. It doesnt store the items in the storage. if ($@members > 9){set .@greward,2;} else if ($@members > 14) { set .@greward,3; set .@areward,1; } else if ($@members > 19) { set .@greward,4; set .@areward,2; } else if ($@members == 25) { set .@greward,5; set .@areward,3; } else {set .@greward,1;} mes .@n$; mes "Processing...."; next; mes .@n$; mes "All items are stored to your storage please check."; for( set .@i, 0; .@i < getarraysize(.@Gitem); set .@i, .@i + 1 ){ query_sql("INSERT INTO `storage` (`id`, `account_id`, `nameid`, `amount`, `identify`) VALUES (NULL, '.@acc', '.@Gitem[.@i]', '.@GAmount[.@i]*.@greward', '1')"); } if ($@members > 14){ for( set .@i, 0; .@i < getarraysize(.@Aitem); set .@i, .@i + 1 ){ query_sql("INSERT INTO `storage` (`id`, `account_id`, `nameid`, `amount`, `identify`) VALUES (NULL, '.@acc', '.@Aitem[.@i]', '.@AAmount[.@i]*.@areward', '1')"); } } set #Claimed, 1; set $@members,0; set .@greward,0; set .@areward,0; close; prontera,164,161,4 script Guild Admin 88,{ //Directly stored in the guild master storage. setarray .@Gitem[0], 14003, 13995, 14004, 13989, 13414, 5170, 2701, 2624, 2729, 2424, 2528, 2285; //Item Number setarray .@GAmount[0], 25, 25, 25, 25, 1, 1, 1, 2, 1, 5, 5, 2; //Amount //Additional Items for 15+ Members setarray .@Aitem[0], 1228, 5518, 5137, 5423; //Item Number setarray .@AAmount[0], 1, 1, 1, 1; //Amount set .@n$, "[Guild Admin]"; // Input the NPC name. set .check,1; // Set 1 if you have harmony , Set 0 if you don't have harmony set .@guild, getcharid(2); set .@acc, getcharid(3);
-
im using it in guild package.. does my script is correct?
-
what is the best way to summarize this? if ($@members > 4) { set .@greward,1; // 5-9 Members if ($@members > 9){ set .@greward,2; // 10-14 Members if ($@members > 14){ set .@greward,3; set .@areward,1; // 15-19 Members if ($@members > 19){ set .@greward,4; set .@areward,2; // 20-24 Members if ($@members == 25){ set .@greward,5; set .@areward,3; // 25 Members } } } } }
-
like what I said in the top.. SW is not working... even I comment and uncomment those codes. monsters can still damage me in Safety Wall.. renewal.h // Copyright (c) rAthena Dev Teams - Licensed under GNU GPL // For more information, see LICENCE in the main folder #ifndef _CONFIG_RENEWAL_H_ #define _CONFIG_RENEWAL_H_ //quick option to disable all renewal option, used by ./configure #define PRERE #ifndef PRERE /** * rAthena configuration file (http://rathena.org) * For detailed guidance on these check http://rathena.org/wiki/SRC/config/ **/ /** * @INFO: This file holds general-purpose renewal settings, for class-specific ones check /src/config/classes folder **/ /// game renewal server mode /// (disable by commenting the line) /// /// leave this line to enable renewal specific support such as renewal formulas //#define RENEWAL /// renewal cast time /// (disable by commenting the line) /// /// leave this line to enable renewal casting time algorithms /// cast time is decreased by DEX * 2 + INT while 20% of the cast time is not reduced by stats. /// example: /// on a skill whos cast time is 10s, only 8s may be reduced. the other 2s are part of a /// "fixed cast time" which can only be reduced by specialist items and skills //#define RENEWAL_CAST /// renewal drop rate algorithms /// (disable by commenting the line) /// /// leave this line to enable renewal item drop rate algorithms /// while enabled a special modified based on the difference between the player and monster level is applied /// based on the http://irowiki.org/wiki/Drop_System#Level_Factor table //#define RENEWAL_DROP /// renewal exp rate algorithms /// (disable by commenting the line) /// /// leave this line to enable renewal item exp rate algorithms /// while enabled a special modified based on the difference between the player and monster level is applied //#define RENEWAL_EXP /// renewal level modifier on damage /// (disable by commenting the line) /// // leave this line to enable renewal base level modifier on skill damage (selected skills only) //#define RENEWAL_LVDMG /// renewal ASPD [malufett] /// (disable by commenting the line) /// /// leave this line to enable renewal ASPD /// - shield penalty is applied /// - AGI has a greater factor in ASPD increase /// - there is a change in how skills/items give ASPD /// - some skill/item ASPD bonuses won't stack //#define RENEWAL_ASPD #endif #endif // _CONFIG_RENEWAL_H_
-
pre-renewal sir.
-
Hi my safety wall is not working even I comment the lines for renewal here is the code. skill.c switch( skill_id ) { //case MH_STEINWAND: case MG_SAFETYWALL: //#ifdef RENEWAL // if(skill_id == MH_STEINWAND) // val2 = 300 * skill_lv + 65 * ( status->int_ + status_get_lv(src) ) + status->max_sp; //nb hp // else // val2 = status_get_max_hp(src) * 3; //#else val2 = skill_lv + 1; //#endif break; battle.c if( sc->data[SC_SAFETYWALL] && (flag&(BF_SHORT|BF_MAGIC))==BF_SHORT ) { struct skill_unit_group* group = skill_id2group(sc->data[SC_SAFETYWALL]->val3); //uint16 skill_id = sc->data[SC_SAFETYWALL]->val2; (safetywall or steinwand) if (group) { //in RE, SW possesses a lifetime equal to group val2, (3x caster hp, or homon formula) //#ifdef RENEWAL // d->dmg_lv = ATK_BLOCK; // if ( ( group->val2 - damage) > 0 ) { // group->val2 -= (int)cap_value(damage,INT_MIN,INT_MAX); // } else // skill_delunitgroup(group); // return 0; //#else if (--group->val2<=0) skill_delunitgroup(group); d->dmg_lv = ATK_BLOCK; return 0; //#endif } How can I fix that ? Im inside the safety wall but monster wont miss any attack.
-
I already put harmony on it and hex those button that I dont need
-
I need hex code for 2012-04-10..
-
hi anyone can give me the code of enable multiple windows or guide I already put disable multiple windows... I dont to use Weediff anymore coz I already hex alot on my client.. I just need the codes to be change.
-
//===== rAthena Script ======================================= //= Warper //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.2 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= //= A complete - but very condensed - warper script. //= Coordinates written largely by Tekno-Kanix and ToastOfDoom. //============================================================ - script Warper -1,{ function Go; function Disp; function Pick; // -------------------------------------------------- // Main Menu: // -------------------------------------------------- menu "Last Warp ^777777["+lastwarp$+"]^000000",-, " ~ Towns",Towns, " ~ Fields",Fields, " ~ Dungeons",Dungeons; //" ~ Guild Castles",Castles; //"~ Special Areas",Special; if (lastwarp$ == "") {dispbottom "You have not warped anywhere yet."; close;} specialeffect2 501; sleep2 1000; specialeffect2 445; sleep2 1000; warp lastwarp$,lastwarpx,lastwarpy; close2; // ------------------- Functions ------------------- // * Go("<map>",<x>,<y>); // ~ Warps directly to a map. // * Disp("<Menu Option>",<first option>,<last option>); // * Pick("<map_prefix>"{,<index offset>}); // ~ Dynamic menu and map selection. // * Disp("","<Option 1>:<Option 2>:<etc.>"); // * Pick("","<map1>","<map2>","<etc.>"); // ~ Manual menu and map selection. // // Other notes: // ~ Array @c[] holds all (x,y) coordinates. // ~ Use @c[2] EXCEPT when maps begin dynamically // at 0: use @c[0] and Pick() offset 1. // -------------------------------------------------- function Go { specialeffect2 501; sleep2 1000; specialeffect2 445; sleep2 1000; warp getarg(0),getarg(1,0),getarg(2,0); getmapxy(lastwarp$,lastwarpx,lastwarpy,0); close2; } function Disp { set @menu$,""; if(getarg(0)=="") { set @menu$,getarg(1); return; } for(set .@i,getarg(1); .@i<=getarg(2); set .@i,.@i+1) set @menu$, @menu$+getarg(0)+" "+.@i+":"; return; } function Pick { if(getarg(0)=="") { set .@i, select(@menu$); specialeffect2 501; sleep2 1000; specialeffect2 445; sleep2 1000; warp getarg(.@i),@c[.@i*2],@c[.@i*2+1]; } else { set .@i, select(@menu$)-getarg(1,0); specialeffect2 501; sleep2 1000; specialeffect2 445; sleep2 1000; warp getarg(0)+((.@i<10)?"0":"")+.@i,@c[.@i*2],@c[.@i*2+1]; } getmapxy(lastwarp$,lastwarpx,lastwarpy,0); close2; } // -------------------------------------------------- Towns: // -------------------------------------------------- menu "Prontera",T1, "Alberta",T2, "Aldebaran",T3, "Amatsu",T4, "Ayothaya",T5, //"Brasilis",T6, "Comodo",T7, //"Dewata",T33, //"Eclage",T34, //"Einbech",T8, "Einbroch",T9, //"El Dicastes",T10, "Geffen",T11, "Gonryun",T12, "Hugel",T13, "Izlude",T14, "Jawaii",T15, "Lighthalzen",T16, "Louyang",T17, "Lutie",T18, //"Malangdo",T35, //"Malaya",T36, //"Manuk",T19, //"Midgarts Expedition Camp",T20, //"Mora",T21, "Morroc",T22, //"Moscovia",T23, //"Nameless Island",T24, "Niflheim",T25, "Payon",T26, "Rachel",T27, //"Splendide",T28, //"Thor Camp",T29, "Umbala",T30, "Veins",T31, "Yuno",T32; T1: Go("prontera",156,185); T2: Go("alberta",117,57); T3: Go("aldebaran",166,112); T4: Go("amatsu",198,84); T5: Go("ayothaya",217,187); T6: Go("brasilis",195,220); T7: Go("comodo",209,143); T8: Go("einbech",70,95); T9: Go("einbroch",64,200); T10: Go("dicastes01",197,187); T11: Go("geffen",119,40); T12: Go("gonryun",160,62); T13: Go("hugel",96,145); T14: Go("izlude",94,103); T15: Go("jawaii",204,286); T16: Go("lighthalzen",158,94); T17: Go("louyang",217,40); T18: Go("xmas",147,134); T19: Go("manuk",260,175); T20: Go("mid_camp",210,288); T21: Go("mora",111,97); T22: Go("morocc",156,46); T23: Go("moscovia",223,184); T24: Go("nameless_n",256,215); T25: Go("niflheim",21,153); T26: Go("payon",160,58); T27: Go("rachel",130,110); T28: Go("splendide",200,153); T29: Go("thor_camp",246,68); T30: Go("umbala",89,157); T31: Go("veins",216,123); T32: Go("yuno",157,51); T33: Go("dewata",199,179); T34: Go("eclage",111,39); T35: Go("malangdo",224,184); T36: Go("malaya",212,206); // -------------------------------------------------- Fields: // -------------------------------------------------- menu "Amatsu Fields",F1, "Ayothaya Fields",F2, //"Bifrost Fields", F3, //"Brasilis Fields",F4, "Comodo Fields",F5, //"Dewata Fields",F26, //"Eclage Fields",F27, "Einbroch Fields",F6, //"El Dicastes Fields",F7, "Geffen Fields",F8, "Gonryun Fields",F9, "Hugel Fields",F10, "Lighthalzen Fields",F11, "Louyang Field",F12, "Lutie Field",F13, //"Malaya Fields",F28, "Manuk Fields",F14, "Mjolnir Fields",F15, "Moscovia Fields",F16, "Niflheim Fields",F17, "Payon Forests",F18, "Prontera Fields",F19, "Rachel Fields",F20, "Sograt Deserts",F21, "Splendide Fields",F22, "Umbala Fields",F23, "Veins Fields",F24, "Yuno Fields",F25; F1: setarray @c[2],0,0; Disp("Amatsu Field",1,1); Pick("ama_fild"); F2: setarray @c[2],0,0,0,0; Disp("Ayothaya Field",1,2); Pick("ayo_fild"); F3: setarray @c[2],0,0,0,0; Disp("Bifrost Field",1,2); Pick("bif_fild"); F4: setarray @c[2],0,0; Disp("Brasilis Field",1,1); Pick("bra_fild"); F5: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Comodo Field",1,9); Pick("cmd_fild"); F6: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Einbroch Field",1,10); Pick("ein_fild"); F7: setarray @c[2],0,0,0,0; Disp("El Dicastes Field",1,2); Pick("dic_fild"); F8: setarray @c[0],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Geffen Field",0,14); Pick("gef_fild",1); F9: setarray @c[2],0,0; Disp("Gonryun Field",1,1); Pick("gon_fild"); F10: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Hugel Field",1,7); Pick("hu_fild"); F11: setarray @c[2],0,0,0,0,0,0; Disp("Lighthalzen Field",1,3); Pick("lhz_fild"); F12: setarray @c[2],0,0; Disp("Louyang Field",1,1); Pick("lou_fild"); F13: setarray @c[2],0,0; Disp("Lutie Field",1,1); Pick("xmas_fild"); F14: setarray @c[2],0,0,0,0,0,0; Disp("Manuk Field",1,3); Pick("man_fild"); F15: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Mjolnir Field",1,12); Pick("mjolnir_"); F16: setarray @c[2],0,0,0,0; Disp("Moscovia Field",1,2); Pick("mosk_fild"); F17: setarray @c[2],0,0,0,0; Disp("Niflheim Field",1,2); Pick("nif_fild"); F18: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Payon Forest",1,11); Pick("pay_fild"); F19: setarray @c[0],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Prontera Field",0,11); Pick("prt_fild",1); F20: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Rachel Field",1,13); Pick("ra_fild"); F21: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("","Sograt Desert 1:Sograt Desert 2:Sograt Desert 3:Sograt Desert 7:Sograt Desert 11:Sograt Desert 12:Sograt Desert 13:Sograt Desert 16:Sograt Desert 17:Sograt Desert 18:Sograt Desert 19:Sograt Desert 20:Sograt Desert 21:Sograt Desert 22"); Pick("","moc_fild01","moc_fild02","moc_fild03","moc_fild07","moc_fild11","moc_fild12","moc_fild13","moc_fild16","moc_fild17","moc_fild18","moc_fild19","moc_fild20","moc_fild21","moc_fild22"); F22: setarray @c[2],0,0,0,0,0,0; Disp("Splendide Field",1,3); Pick("spl_fild"); F23: setarray @c[2],0,0,0,0,0,0,0,0; Disp("Umbala Field",1,4); Pick("um_fild"); F24: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Veins Field",1,7); Pick("ve_fild"); F25: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Yuno Field",1,12); Pick("yuno_fild"); F26: setarray @c[2],0,0; Disp("Dewata Field",1,1); Pick("dew_fild"); F27: setarray @c[2],0,0; Disp("Eclage Field",1,1); Pick("ecl_fild"); F28: setarray @c[2],0,0,0,0; Disp("Malaya Field",1,2); Pick("ma_fild"); // -------------------------------------------------- Dungeons: // -------------------------------------------------- menu "Abyss Lakes",D1, "Amatsu Dungeon",D2, "Anthell",D3, "Ayothaya Dungeon",D4, "Beach Dungeon",D5, "Bio Labs",D6, //"Brasilis Dungeon",D7, "Byalan Dungeon",D8, "Clock Tower",D9, "Coal Mines",D10, "Culvert",D11, "Cursed Abbey",D12, //"Dewata Dungeon",D41, "Einbroch Dungeon",D13, //"Endless Tower",D14, "Gefenia",D15, "Geffen Dungeon",D16, "Glast Heim",D17, "Gonryun Dungeon",D18, //"Guild Dungeons",GD, "Hidden Dungeon",D19, "Ice Dungeon",D20, "Juperos",D21, "Kiel Dungeon",D22, "Louyang Dungeon",D23, "Magma Dungeon",D24, //"Malangdo Dungeon",D42, "Moscovia Dungeon",D25, //"Nidhogg's Dungeon",D26, "Odin Temple",D27, "Orc Dungeon",D28, "Payon Dungeon",D29, "Pyramids",D30, "Rachel Sanctuary",D31, //"Scaraba Hole",D32, //"Sealed Shrine",D33, "Sphinx",D34, "Sunken Ship",D35, "Thanatos Tower",D36, "Thor Volcano",D37, "Toy Factory",D38, "Turtle Dungeon",D39, "Umbala Dungeon",D40; D1: setarray @c[2],0,0,0,0,0,0; Disp("Abyss Lakes",1,3); Pick("abyss_"); D2: setarray @c[2],0,0,0,0,0,0; Disp("Amatsu Dungeon",1,3); Pick("ama_dun"); D3: setarray @c[2],0,0,0,0; Disp("Anthell",1,2); Pick("anthell"); D4: setarray @c[2],0,0,0,0; Disp("","Ancient Shrine Maze:Inside Ancient Shrine"); Pick("ayo_dun"); D5: setarray @c[2],0,0,0,0,0,0; Disp("Beach Dungeon",1,3); Pick("","beach_dun","beach_dun2","beach_dun3"); D6: setarray @c[2],0,0,0,0,0,0; //,245,58 Bio Lab 4 Disp("Bio Lab",1,3); Pick("lhz_dun"); D7: setarray @c[2],0,0,0,0; Disp("Brasilis Dungeon",1,2); Pick("bra_dun"); D8: setarray @c[0],0,0,0,0,0,0,0,0,0,0; Disp("Byalan Dungeon",1,5); Pick("iz_dun",1); D9: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("","Clock Tower 1:Clock Tower 2:Clock Tower 3:Clock Tower 4:Basement 1:Basement 2:Basement 3:Basement 4"); Pick("","c_tower1","c_tower2","c_tower3","c_tower4","alde_dun01","alde_dun02","alde_dun03","alde_dun04"); D10: setarray @c[2],0,0,0,0,0,0; Disp("Coal Mines",1,3); Pick("mjo_dun"); D11: setarray @c[2],0,0,0,0,0,0,0,0; Disp("Culvert",1,4); Pick("","prt_sewb1","prt_sewb2","prt_sewb3","prt_sewb4"); D12: setarray @c[2],0,0,0,0,0,0; Disp("Cursed Abbey",1,3); Pick("abbey"); D13: setarray @c[2],0,0,0,0; Disp("Einbroch Dungeon",1,2); Pick("ein_dun"); D14: setarray @c[2],0,0; Disp("","Misty Island"); Pick("","e_tower"); D15: setarray @c[2],0,0,0,0,0,0,0,0; Disp("Gefenia",1,4); Pick("gefenia",0); D16: setarray @c[0],0,0,0,0,0,0,0,0; Disp("Geffen Dungeon",1,4); Pick("gef_dun",1); D17: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("","Entrance:Castle 1:Castle 2:Chivalry 1:Chivalry 2:Churchyard:Culvert 1:Culvert 2:Culvert 3:Culvert 4:St. Abbey:Staircase Dungeon:Underground Cave 1:Underground Cave 2:Underground Prison 1:Underground Prison 2"); Pick("","glast_01","gl_cas01","gl_cas02","gl_knt01","gl_knt02","gl_chyard","gl_sew01","gl_sew02","gl_sew03","gl_sew04","gl_church","gl_step","gl_dun01","gl_dun02","gl_prison","gl_prison1"); D18: setarray @c[2],0,0,0,0,0,0; Disp("Gonryun Dungeon",1,3); Pick("gon_dun"); D19: setarray @c[2],0,0,0,0,0,0; Disp("Hidden Dungeon",1,3); Pick("prt_maze"); D20: setarray @c[2],0,0,0,0,0,0,0,0; Disp("Ice Dungeon",1,4); Pick("ice_dun"); D21: setarray @c[2],0,0,0,0,0,0,0,0; Disp("","Entrance:Juperos 1:Juperos 2:Core"); Pick("","jupe_cave","juperos_01","juperos_02","jupe_core"); D22: setarray @c[2],0,0,0,0; Disp("Kiel Dungeon",1,2); Pick("kh_dun"); D23: setarray @c[2],0,0,0,0,0,0,0,0; Disp("","The Royal Tomb:Inside the Royal Tomb:Suei Long Gon"); Pick("lou_dun"); D24: setarray @c[2],0,0,0,0; Disp("Magma Dungeon",1,2); Pick("mag_dun"); D25: setarray @c[2],0,0,0,0,0,0; Disp("Moscovia Dungeon",1,3); Pick("mosk_dun"); D26: setarray @c[2],0,0,0,0; Disp("Nidhogg's Dungeon",1,2); Pick("nyd_dun"); D27: setarray @c[2],0,0,0,0,0,0; Disp("Odin Temple",1,3); Pick("odin_tem"); D28: setarray @c[2],0,0,0,0; Disp("Orc Dungeon",1,2); Pick("orcsdun"); D29: setarray @c[0],0,0,0,0,0,0,0,0,0,0; Disp("Payon Dungeon",1,5); Pick("pay_dun",1); D30: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0; Disp("","Pyramids 1:Pyramids 2:Pyramids 3:Pyramids 4:Basement 1:Basement 2"); Pick("moc_pryd"); D31: setarray @c[2],0,0,0,0,0,0,0,0,0,0; Disp("Rachel Sanctuary",1,5); Pick("ra_san"); D32: setarray @c[2],0,0,0,0; Disp("Scaraba Hole",1,2); Pick("dic_dun"); D33: setarray @c[2],0,0; Disp("","Friar Patrick"); Pick("","monk_test"); D34: setarray @c[2],0,0,0,0,0,0,0,0,0,0; Disp("Sphinx",1,5); Pick("","in_sphinx1","in_sphinx2","in_sphinx3","in_sphinx4","in_sphinx5"); D35: setarray @c[2],0,0,0,0; Disp("Sunken Ship",1,2); Pick("treasure"); D36: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; Disp("Thanatos Tower",1,12); Pick("tha_t"); D37: setarray @c[2],0,0,0,0,0,0; Disp("Thor Volcano",1,3); Pick("thor_v"); D38: setarray @c[2],0,0,0,0; Disp("Toy Factory",1,2); Pick("xmas_dun"); D39: setarray @c[2],0,0,0,0,0,0,0,0; Disp("","Entrance:Turtle Dungeon 1:Turtle Dungeon 2:Turtle Dungeon 3"); Pick("tur_dun"); D40: setarray @c[2],0,0,0,0,0,0; Disp("","Carpenter's Shop in the Tree:Passage to a Foreign World:Hvergermil's Fountain"); Pick("","um_dun01","um_dun02","yggdrasil01"); D41: setarray @c[2],0,0,0,0; Disp("Dewata Dungeon",1,2); Pick("dew_dun"); D42: setarray @c[2],0,0; Disp("Malangdo Dungeon",1,1); Pick("mal_dun"); GD: setarray @c[2],0,0,0,0,0,0,0,0,0,0,0,0; Disp("","Baldur:Luina:Valkyrie:Britoniah:Arunafeltz:Schwaltzvalt"); Pick("","gld_dun01","gld_dun02","gld_dun03","gld_dun04","arug_dun01","schg_dun01"); // -------------------------------------------------- Castles: // -------------------------------------------------- menu "Aldebaran Castles",C1, "Geffen Castles",C2, "Payon Castles",C3, "Prontera Castles",C4, "Arunafeltz Castles",C5, "Schwaltzvalt Castles",C6; C1: setarray @c[2],48,83,95,249,142,85,239,242,264,90; Disp("","Neuschwanstein:Hohenschwangau:Nuenberg:Wuerzburg:Rothenburg"); Pick("","alde_gld","alde_gld","alde_gld","alde_gld","alde_gld"); C2: setarray @c[2],214,75,308,240,143,240,193,278,305,87; Disp("","Repherion:Eeyolbriggar:Yesnelph:Bergel:Mersetzdeitz"); Pick("","gef_fild13","gef_fild13","gef_fild13","gef_fild13","gef_fild13"); C3: setarray @c[2],121,233,295,116,317,293,140,160,204,266; Disp("","Bright Arbor:Scarlet Palace:Holy Shadow:Sacred Altar:Bamboo Grove Hill"); Pick("","pay_gld","pay_gld","pay_gld","pay_gld","pay_gld"); C4: setarray @c[2],134,65,240,128,153,137,111,240,208,240; Disp("","Kriemhild:Swanhild:Fadhgridh:Skoegul:Gondul"); Pick("","prt_gld","prt_gld","prt_gld","prt_gld","prt_gld"); C5: setarray @c[2],158,272,83,47,68,155,299,345,292,107; Disp("","Mardol:Cyr:Horn:Gefn:Banadis"); Pick("","aru_gld","aru_gld","aru_gld","aru_gld","aru_gld"); C6: setarray @c[2],293,100,288,252,97,196,137,90,71,315; Disp("","Himinn:Andlangr:Viblainn:Hljod:Skidbladnir"); Pick("","sch_gld","sch_gld","sch_gld","sch_gld","sch_gld"); // -------------------------------------------------- Special: // -------------------------------------------------- menu "Auction Hall",S1, "Battlegrounds",S2, "Casino",S3, "Gonryun Arena",S4, "Izlude Arena",S5, "Monster Race Arena",S6, "Turbo Track",S7; S1: Go("auction_01",22,68); S2: Go("bat_room",154,150); S3: Go("cmd_in02",179,129); S4: Go("gon_test",48,10); S5: Go("arena_room",100,88); S6: Go("p_track01",62,41); S7: Go("turbo_room",99,114); } // -------------------------------------------------- // Duplicates: // -------------------------------------------------- prontera,158,191,4 duplicate(Warper) Warper#1 721 anyone can help me on this script I just want this warps you to random x and y....
-
Hi guys... I just want to make a waiting room npc with this codes for queue BG or RAMOD.. OnDoJoin: // @joinbg if (agitcheck() || agitcheck2()){ dispbottom "[Service is disabled during WoE]"; end; } if(Bat_Team == 1){ if( checkquest(8506,PLAYTIME) == 2 ) erasequest 8506; if( checkquest(8506,PLAYTIME) != -1 ) { dispbottom "[You are a Deserter. You can't participate until the indicator goes off]"; end; } set .@Blue_Team,.@Blue_Team+1; bg_queue_join .BG_Queue; end; } if(Bat_Team == 2){ if( checkquest(8506,PLAYTIME) == 2 ) erasequest 8506; if( checkquest(8506,PLAYTIME) != -1 ) { dispbottom "[You are a Deserter. You can't participate until the indicator goes off]"; end; } set .@Red_Team,.@Red_Team+1; bg_queue_join .BG_Queue; end; } dispbottom "[Please register to General Guillaume or Prince Croix at prontera.]"; end; OnDoLeave: // @leavebg if(Bat_Team == 1) {set .@Blue_Team,.@Blue_Team-1;} if(Bat_Team == 2) {set .@Red_Team,.@Red_Team-1;} bg_queue_leave .BG_Queue; end; OnRotate: //OnTimer600000: // Rotation if BG don't start... Comment if you don't want to use this method. 120 = 2 Minutes set $@BG_Status, 0; // Warps Teams bg_warp $@BG_Team1,"prontera",156,187; bg_warp $@BG_Team2,"prontera",156,187; bg_warp $@BG_Team3,"prontera",156,187; // Destroy Teams bg_destroy $@BG_Team1; set $@BG_Team1, 0; bg_destroy $@BG_Team2; set $@BG_Team2, 0; bg_destroy $@BG_Team3; set $@BG_Team3, 0; // Team Reset set .@Blue_Team,0; set .@Red_Team1,0; // Move to Next Arena if( set($BG_Index,$BG_Index + 1) >= .BG_Count ) set $BG_Index,0; // Restart Rotation set .BG_Arena$,.BG_Arenas$[$BG_Index]; //initnpctimer; // Rotation if BG don't start... Comment if you don't want to use this method // Trigger the Event - Maybe people is waiting... OnJoinEvent: if( $@BG_Status == 2 ) end; // BG Ending... Must wait until OnRotate is called set .@Queue_Count, bg_queue_data(.BG_Queue,0); switch( $@BG_Status ) { case 0: // Idle - Ready to Start if( .BG_Arena$ == "Tierra_TI" ) set .@Req, .BG_Min[$BG_Index] * 3; else set .@Req, .BG_Min[$BG_Index] * 2; if( bg_queue_checkstart(.BG_Queue,.TeamMode,( (.BG_Arena$ == "Tierra_TI") ? 3 : 2 ),.BG_Min[$BG_Index]) ) { donpcevent .BG_Arena$ + "::OnBuildTeams"; // Fill Teams with Queue Members if( .BG_Arenas$[$BG_Index] == "Tierra_TI" ) bg_queue2teams .BG_Queue,.BG_Min[$BG_Index],.BG_Max[$BG_Index],.TeamMode,$@BG_Team1,$@BG_Team2,$@BG_Team3; else bg_queue2teams .BG_Queue,.BG_Min[$BG_Index],.BG_Max[$BG_Index],.TeamMode,$@BG_Team1,$@BG_Team2; stopnpctimer; // Rotation if BG don't start... Comment if you don't want to use this method set $@BG_Status,1; set .@msg$, "Battleground -- " + .BG_Names$[$BG_Index] + " -- Beginning"; bgannounce .@msg$,.BG_Color$[$BG_Index]; donpcevent .BG_Arena$ + "::OnReady"; } else { if(.@Queue_Count > 1){ set .@msg$, "Battleground -- " + .BG_Names$[$BG_Index] + " -- " + .@Queue_Count + " players are registered."; announce .@msg$,0,.BG_Color$[$BG_Index]; end; } set .@msg$, "Battleground -- " + .BG_Names$[$BG_Index] + " -- " + .@Queue_Count + " player is registered."; announce .@msg$,0,.BG_Color$[$BG_Index]; } break; case 1: // Running - Others can join if( .@Queue_Count > 0 ) { if( .BG_Arena$ == "Tierra_TI" ) { bg_balance_teams .BG_Queue,.BG_Max[$BG_Index],.TeamMode,$@BG_Team1,$@BG_Team2,$@BG_Team3; set .@BG_Count1, bg_get_data($@BG_Team1,0); set .@BG_Count2, bg_get_data($@BG_Team2,0); set .@BG_Count3, bg_get_data($@BG_Team3,0); set .@msg$, "Battleground -- " + .BG_Names$[$BG_Index] + " -- B: " + .@BG_Count1 + "/" + .BG_Max[$BG_Index] + ", R: " + .@BG_Count2 + "/" + .BG_Max[$BG_Index] + ", G: " + .@BG_Count3 + "/" + .BG_Max[$BG_Index] + " (Playing)"; } else { bg_balance_teams .BG_Queue,.BG_Max[$BG_Index],.TeamMode,$@BG_Team1,$@BG_Team2; set .@BG_Count1, bg_get_data($@BG_Team1,0); set .@BG_Count2, bg_get_data($@BG_Team2,0); set .@msg$, "Battleground -- " + .BG_Names$[$BG_Index] + " -- B: " + .@BG_Count1 + "/" + .BG_Max[$BG_Index] + ", R: " + .@BG_Count2 + "/" + .BG_Max[$BG_Index] + " (Playing)"; } bgannounce .@msg$,.BG_Color$[$BG_Index]; } break; } end; OnVersusJoin: if( $@VS_Status != 0 ) end; set .@Queue_Count, bg_queue_data(.VS_Queue,0); if( .@Queue_Count >= 10 ) { donpcevent "FFA_Arena::OnBuildTeams"; bg_queue2teams .VS_Queue,1,1,0,$@VS_Team[0],$@VS_Team[1],$@VS_Team[2],$@VS_Team[3],$@VS_Team[4],$@VS_Team[5],$@VS_Team[6],$@VS_Team[7],$@VS_Team[8],$@VS_Team[9]; set $@VS_Status,1; announce "Battleground -- Free For All -- Begining",0,0x483D8B; donpcevent "FFA_Arena::OnReady"; } else announce "Battleground -- Free For All -- " + (10 - .@Queue_Count) + " more players to start",0,0x483D8B; end; and this is the npc script.. // General Guillaume // ********************************************************************* prontera,164,177,2 script General Guillaume 420,{ cutin "bat_kiyom2",2; mes "[General Guillaume]"; mes "Hot-blooded adventurer, we need your ability to win this battle."; next; cutin "bat_kiyom1",2; mes "[General Guillaume]"; mes "Our great king, Marcel Marollo VII, is very sick lately. His Majesty has declared that he chosen either me or Prince Croix as the next king amongst his 9 sons."; next; mes "[General Guillaume]"; mes "Two kings can't share a nation!"; mes "Only the one victorious from His Majesty's appointed battle will be enthroned."; next; mes "[General Guillaume]"; mes "This is however, not just a battle between us. This battle will determine the future of this country. I pledge on my honor to prove that I'm the one who can protect this Maroll from outside threats."; next; switch( select("Join the Blue Team","End Conversation") ) { case 1: cutin "bat_kiyom2",2; mes "[General Guillaume]"; mes "Welcome to my army, comrade."; mes "Your eyes tell me that you're a soldier that I can trust."; set Bat_Team,1; next; mes "[General Guillaume]"; mes "Now, go upstairs and apply for battle with your comrades. I'm sure they'll welcome you whole-heartedly!"; break; case 2: mes "[General Guillaume]"; mes "I'll be the one who will capture the flag!"; break; } close2; cutin "",255; end; } // General Croix // ********************************************************************* prontera,147,177,7 script Prince Croix 416,{ cutin "bat_crua1",2; mes "[Prince Croix]"; mes "Wise adventurer, why don't you lend us your power for victory?"; next; cutin "bat_crua2",2; mes "[Prince Croix]"; mes "I do not wish to shed blood, but I have no choice but to fight for the possibility of peace and for the sake of my people."; next; mes "[Prince Croix]"; mes "General Guillaume may have an advantage in this battle as he is the great general of Maroll, but that doesn't automatically mean he'll win. I want to win this battle so that I can grant a better future for my people."; next; switch( select("Join the Red Team","End Conversation") ) { case 1: mes "[Prince Croix]"; mes "Thank you so much. I feel like I can win with the help of adventurers like you. Now, please go downstairs and join your comrades in sharpening their skills to fight the enemy!"; set Bat_Team,2; break; case 2: mes "[Prince Croix]"; mes "For Maroll!"; break; } close2; cutin "",255; end; } Can you give me an example of waiting room that can I attach with this..
-
Hi guys I'm using a guild pack with sql.... here is the code. for(set .@i,0; .@i<25; set .@i,.@i+1) query_sql("SELECT account_id,char_id FROM `guild_member` WHERE guild_id = '"+.@guild+"'", .@acc, .@char); for(set .@j,0; .@j<getarraysize(.@acc); set .@j,.@j+1){ query_sql("SELECT `last_ip` FROM `login` WHERE account_id = '"+.@acc[.@j]+"'",.@ip1$); if (isloggedin(.@acc[.@j],.@char[.@j])) { query_sql("SELECT `last_ip` FROM `guild_package` WHERE `account_id` = '"+.@acc[.@j]+"' AND `last_ip` = '"+.@ip1$+"'",.@ip2$); if(.@ip2$ == .@ip1$){ message rid2name(.@acc[.@j]),"Sorry but your IP Address is already registered."; }else{ query_sql "INSERT INTO `guild_package` (`account_id` , `last_ip`) VALUES ('"+.@acc[.@j]+"','"+.@ip1$+"')"; set $@members,$@members+1; } } } I just want to ask if players can bypass this by changing IP Address? and how about mac address?
-
[MVP Invasion] I need your help to enhance.
nasagnilac replied to nasagnilac's question in Scripting Support
- script Invasion -1,{ OnInvasion: announce "Prophet: MvP Invasion is now Activated",0; sleep2 10000; announce "Prophet: You have only 1 day to eliminate them all.",0; sleep2 10000; announce "Citizen of Morroc: We are invaded by MvP Monsters Please help us!!",0; donpcevent "Invasion::OnStart"; initnpctimer; end; OnTimer1440000: set $invade,0; killmonsterall "morocc",1; end; OnStart: setarray .@MvP[0], 1382, 1098, 1038, 1039, 1046, 1059, 1086, 1087, 1112, 1115, 1147, 1150, 1157, 1159, 1190, 1251, 1252, 1272, 1312, 1373, 1389, 1418, 1492, 1511, 1583, 1623, 1630, 1646, 1647, 1648, 1649, 1650, 1651, 1658, 1685, 1688, 1708, 1719, 1734, 1751, 1768, 1779, 1785, 1832, 1871, 1873, 1885, 1917, 2022, 2068; setarray .@MvPAmount[0], 300, 600, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 1, 3, 1, 3, 3, 3, 1, 1, 3; for( set .@i, 0; .@i < getarraysize(.@MvP); set .@i, .@i + 1 ){ monster "morocc",0,0,""+getmonsterinfo(.@MvP[.@i],0)+"",.@MvP[.@i],.@MvPAmount[.@i],"Invasion::OnMyMobDead"; } end; OnMyMobDead: set .@luck,rand(1,10); if(.@luck >=9){ getitem 25000,1; // Bonus Golden Mineral }else{ end; } } Hi guys I need some help I dont know if my OnTimer is working.. what do you think so? -
hello guys I just need help on this codes for( .@i = 0; .@i < getarraysize( .@PItem ); set .@i, .@i + 1 ) set .@menu$,.@menu$ +" "+getitemname( .@PItem[.@i] )+":"; .@i = select(.@menu$); set .@NItem,6396; //Auger of Spirit set .@NAmount,1; //Amount setarray .@PItem[0], 2201, 2286, 5068, 5074; setarray .@PAmount[0], 1, 1, 1, 1; setarray .@PResult[0], 2202, 18507, 18518, 18519; when Im picking sunglasses. I got the wrong ingredients as you can see here.
-
Guild Package[90% Working] need to fix and enhance
nasagnilac replied to GM Freya's question in Scripting Support
This topic is solved now... thank you for your help. -
Guild Package[90% Working] need to fix and enhance
nasagnilac replied to GM Freya's question in Scripting Support
I got this problem....Im not too familiar with query_sql.. here is the code.. for(set .@i,0; .@i<25; set .@i,.@i+1) query_sql("SELECT account_id,char_id FROM `guild_member` WHERE guild_id = '"+.@guild+"'", .@acc, .@char); for(set .@j,0; .@j<getarraysize(.@acc); set .@j,.@j+1){ query_sql("SELECT `last_ip` FROM `login` WHERE account_id = '"+.@acc[.@j]+"'",.@ip1); if (isloggedin(.@acc[.@j],.@char[.@j])) { query_sql("SELECT `last_ip` FROM `guild_package` WHERE `account_id` = '"+.@acc[.@j]+"' AND `last_ip` = '.@ip1+'",.@ip2); if(.@ip2){ message rid2name(.@acc[.@j]),"Sorry but you can't cheat on this system."; }else{ query_sql "INSERT INTO `guild_package` (NULL,`account_id` , `last_ip`) VALUES (NULL,'"+.@acc[.@j]+"','"+.@ip1+"')"; set $@members,$@members+1; } } -
Guild Package[90% Working] need to fix and enhance
nasagnilac replied to GM Freya's question in Scripting Support
prontera,153,164,4 script Guild Admin 88,{ setarray .@Gitem[0], 14003, 14003, 14003, 14003; setarray .@GAmount[0], 1, 1, 1, 1; if(#Claimed == 1) goto L_AG; if ( getguildmaster(getcharid(2)) != strcharinfo(0) ) goto L_not_gm; mes "[Guild Admin]"; mes "Hello There it seems you are a Guild Master."; mes "On our server we have here a sytem called Guild Package."; next; mes "[Guild Admin]"; mes "You will need 5 online members to your guild and includes you as of them."; next; mes "[Guild Admin]"; mes "Do you want to claim it now and let me check your online players from your guild?"; next; switch(select("Checking Requirements:Ready for claiming Guild Package:Maybe later..")) { case 1: mes "[Guild Admin]"; mes "Checking..."; set .@guild, getcharid(2); next; mes "[Guild Admin]"; mes "Checking..."; callsub OnCheck,1; next; mes "[Guild Admin]"; mes "Your guild has a "+.@members+" members online with cleared IP Address in our database."; next; if(@members < 5){ mes "[Guild Admin]"; mes "Sorry but your guild didn't reach the minimum amount of members needed."; set @members,0; close; } mes "[Guild Admin]"; mes "Your guild is qualified to apply Guild Package since you have "+.@members+" members online with cleared IP Address."; set @members,0; close; case 2: mes "[Guild Admin]"; mes "You will need at least 200 space to your storage or else."; mes "Do you want to proceed?"; set .@guild, getcharid(2); next; switch(select("Yes:No")) { case 1: mes "[Guild Admin]"; mes "Processing...."; next; mes "[Guild Admin]"; mes "Processing...."; callsub OnClaim,1; next; if(@members < 5){ mes "[Guild Admin]"; mes "Sorry but some of the cleared IP Address are offline."; set @members,0; close; } if (.@members <= 5) {set .@greward,1;} // 5-9 Members else if (@members <= 10){set .@greward,2;} // 10-14 Members else if (@members < 15){set .@greward,3;} // 15-19 Members else if (@members < 20){set .@greward,4;} // 20-24 Members else if (@members <= 25){set .@greward,5;} // 25-29 Members mes "[Guild Admin]"; mes "Processing...."; next; mes "[Guild Admin]"; mes "All items are stored to your storage please check."; //////////Item List////////// for( set .@i, 0; .@i < getarraysize(.@Gitem); set .@i, .@i + 1 ){ storeitem .@Gitem[.@i],(.@GAmount[.@i]*.@greward); } set #Claimed, 1; set @members,0; set .@greward,0; close; case 2: mes "[Guild Admin]"; mes "^616D7ENevermind~, You can come back again!"; close; } case 3: mes "[Guild Admin]"; mes "^616D7ENevermind~, You can come back again!"; close; } L_AG: mes "[Guild Admin]"; mes "^616D7EYour already given a package."; close; L_not_gm: mes "[Guild Admin]"; mes "Ask your guild master to see me."; close; OnCheck: for(set .@i,0; .@i<25; set .@i,.@i+1) query_sql("SELECT account_id,char_id FROM `guild_member` WHERE guild_id = '"+.@guild+"'", .@acc, .@char); for(set .@j,0; .@j<getarraysize(.@acc); set .@j,.@j+1) if (isloggedin(.@acc[.@j],.@char[.@j])) { query_sql("SELECT last_ip FROM `guild_member` WHERE account_id = '"+.@acc[.@j]+"'",.@ip1); query_sql("SELECT last_ip FROM `guild_package` WHERE account_id = '"+.@acc[.@j]+"'",.@ip2); goto IP_Check1; } return; IP_Check1: if(.@ip1 == .@ip2){ message rid2name(.@acc[.@j]),"Sorry but you can't cheat on this system."; } else{ set @members,@members+1; } end; OnClaim: for(set .@i,0; .@i<25; set .@i,.@i+1) query_sql("SELECT account_id,char_id FROM `guild_member` WHERE guild_id = '"+.@guild+"'", .@acc, .@char); for(set .@j,0; .@j<getarraysize(.@acc); set .@j,.@j+1) if (isloggedin(.@acc[.@j],.@char[.@j])) { query_sql("SELECT last_ip FROM `guild_member` WHERE account_id = '"+.@acc[.@j]+"'",.@ip1); query_sql("SELECT last_ip FROM `guild_package` WHERE account_id = '"+.@acc[.@j]+"'",.@ip2); goto IP_Check2; } return; IP_Check2: if(.@ip1 == .@ip2){ message rid2name(.@acc[.@j]),"Sorry but you can't cheat on this system."; } else{ query_sql("INSERT INTO `guild_package` (NULL,'account_id' , 'last_ip') VALUES (NULL,'.@acc[.@j]','.@ip1')"); set @members,@members+1; } end; } Hi I just edit it but something happens... it always says that I just have 0 members,it dont counts me or maybe I got problem with @members. here is the image.