-
Posts
931 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Everything posted by darking123
-
pwede mo ako pm
-
need help about setting ammount of item
darking123 replied to darking123's question in Scripting Support
thank you emistry -
need help about setting ammount of item
darking123 replied to darking123's question in Scripting Support
sir emistry...i found a bug from your script.i have 100 mithril coin...then i entered 10 in the input number..then it gave me 10 ancient coins and my 100 mithril coin is still to my inventory -
about this part of my script mes "[ ^336699Coin Master^000000 ]"; mes "Very well. Here is the list on how much each coin is worth:"; mes "50x ^99CCCCMithril Coin^000000: 1 Ancient Coin"; mes "Do you Want To Trade??"; if (select("Yes I want.:Not now.")-1) close; if(countitem(674)<50) delitem 674,50; getitem 7959,1; goto L_Thanks; i want to add that they will enter the ammount of mithril coin they will convert it to ancient coin because 50 mithril coin=1 ancient coin here is my full script // Made by MoonlightRO \\ // Source: http://www.eathena.ws/board/index.php?showtopic=251759 \\ // Don't take my creation as your own >.> \\ merullian,99,98,5 script Coin Trader 860,{ cutin "kafra_08",2; mes "[ ^336699Coin Master^000000 ]"; mes "What do you want to do today?"; menu "Coins -> Zeny",L_Coins,"Zeny -> Coins",L_Zeny,"Coins -> Ancient Coins",L_ancientcoins,"Nevermind",L_No; L_Coins: next; mes "[ ^336699Coin Master^000000 ]"; mes "Very well. Here is the list on how much each coin is worth:"; mes "^996633Bronze Coin^000000: 50,000,000m Zeny"; mes "^666666Silver Coin^000000: 100,000,000m Zeny"; mes "^FFFF66Gold Coin^000000: 150,000,000m Zeny"; mes "^99CCCCMithril Coin^000000: 200,000,000m Zeny"; mes "Tell me, what coin would you like to exchange?"; next; menu "^996633Bronze Coin^000000",M_Bronze,"^666666Silver Coin^000000",M_Silver,"^FFFF66Gold Coin^000000",M_Gold,"^99CCCCMithril Coin^000000",M_Mithril; M_Bronze: next; mes "[ ^336699Coin Master^000000 ]"; mes "How many coins would you like to give up?"; set @mamount,0; input @mamount; if (@mamount < 0) goto L_No; if (countitem(673) < @mamount) goto L_No; set Zeny,(zeny + (50000000* @mamount)); delitem 673,@mamount; goto L_Thanks; M_Silver: next; mes "[ ^336699Coin Master^000000 ]"; mes "How many coins would you like to give up?"; set @mamount,0; input @mamount; if (@mamount < 0) goto L_No; if (countitem(675) < @mamount) goto L_No; set Zeny,(zeny + (100000000* @mamount)); delitem 675,@mamount; goto L_Thanks; M_Gold: next; mes "[ ^336699Coin Master^000000 ]"; mes "How many coins would you like to give up?"; set @mamount,0; input @mamount; if (@mamount < 0) goto L_No; if (countitem(671) < @mamount) goto L_No; set Zeny,(zeny + (150000000* @mamount)); delitem 671,@mamount; goto L_Thanks; M_Mithril: next; mes "[ ^336699Coin Master^000000 ]"; mes "How many coins would you like to give up?"; set @mamount,0; input @mamount; if (@mamount < 0) goto L_No; if (countitem(674) < @mamount) goto L_No; set Zeny,(zeny + (200000000* @mamount)); delitem 674,@mamount; goto L_Thanks; L_Zeny: next; mes "[ ^336699Coin Master^000000 ]"; mes "Very well. Here is the list on how much each coin is worth:"; mes "^996633Bronze Coin^000000: 50,000,000m Zeny"; mes "^666666Silver Coin^000000: 100,000,000m Zeny"; mes "^FFFF66Gold Coin^000000: 150,000,000m Zeny"; mes "^99CCCCMithril Coin^000000: 200,000,000m Zeny"; mes "Tell me, what coin would you like to get?"; next; menu "^996633Bronze Coin^000000",M_Bronze1,"^666666Silver Coin^000000",M_Silver1,"^FFFF66Gold Coin^000000",M_Gold1,"^99CCCCMithril Coin^000000",M_Mithril1; M_Bronze1: next; mes "[ ^336699Coin Master^000000 ]"; mes "How many coins would you like?"; set @mamount,0; input @mamount; if (zeny < 0) goto L_No; if (zeny < (10* @mamount)) goto L_No; set Zeny,(zeny - (50000000* @mamount)); getitem 673,@mamount; goto L_Thanks; M_Silver1: next; mes "[ ^336699Coin Master^000000 ]"; mes "How many coins would you like?"; set @mamount,0; input @mamount; if (zeny < 0) goto L_No; if (zeny < (100000000* @mamount)) goto L_No; set Zeny,(zeny - (100000000* @mamount)); getitem 675,@mamount; goto L_Thanks; M_Gold1: next; mes "[ ^336699Coin Master^000000 ]"; mes "How many coins would you like?"; set @mamount,0; input @mamount; if (zeny < 0) goto L_No; if (zeny < (150000000* @mamount)) goto L_No; set Zeny,(zeny - (150000000* @mamount)); getitem 671,@mamount; goto L_Thanks; M_Mithril1: next; mes "[ ^336699Coin Master^000000 ]"; mes "How many coins would you like?"; set @mamount,0; input @mamount; if (zeny < 0) goto L_No; if (zeny < (200000000* @mamount)) goto L_No; set Zeny,(zeny - (200000000* @mamount)); getitem 674,@mamount; goto L_Thanks; L_ancientcoins: next; mes "[ ^336699Coin Master^000000 ]"; mes "Very well. Here is the list on how much each coin is worth:"; mes "50x ^99CCCCMithril Coin^000000: 1 Ancient Coin"; mes "Do you Want To Trade??"; if (select("Yes I want.:Not now.")-1) close; if(countitem(674)<50) delitem 674,50; getitem 7959,1; goto L_Thanks; L_Thanks: mes "[ ^336699Coin Master^000000 ]"; mes "Pleasure doing business with you."; close2; cutin "", 255; close; L_No: mes "[ ^336699Coin Master^000000 ]"; mes "Okay~ Bye!"; close2; cutin "", 255; close; }
-
is my autoevent time correct sir?
-
my account is gm level 99 but when i click the find the mushroom..it says there is no mushroom event
-
i want the price to be 2 mithril coin the winner will get i am confused what to edit here splendide,185,200,4 script Find the Mushroom 1084,{ mes "[ Find The Mushroom ]"; if(getgmlevel() > 90) { if(.Event==0) mes "There is no Find the Mushroom event."; else { mes "There is a Find the Mushroom event on now!"; mes "Location: "+ .Map$; mes "Prize: " + getitemname(.ItemID); mes "Number of Mushrooms: " + .Mushrooms; } close; } mes "Hello "+strcharinfo(0)+"! Please customize this event:"; Main: next; mes "[ Find The Mushroom ]"; switch(select("Item [" + getitemname(.ItemID) + "]:Start Event:End Event")) { case 1: mes "Which item would you like the Mushroom to drop?"; mes "Please input the item ID:"; input .ItemID; goto Main; case 2: mes "Starting the event now..."; set .Event,1; close2; goto OnStart; case 3: mes "Ending the event now..."; if(.Event) announce ""+strcharinfo(0)+" ended Find the Mushroom Event!",bc_all; killmonster .Map$,"All"; set .Event,0; close; } OnClock0500: OnClock0900: OnClock1700: OnClock2100: OnStart: announce "Find the Mushroom : It's time to play Find the Mushroom!",0; sleep2 1000; set $@ran, rand(1,15); if ($@ran == 15) set .Map$,"alberta"; if ($@ran == 14) set .Map$,"umbala"; if ($@ran == 13) set .Map$,"niflheim"; if ($@ran == 12) set .Map$,"ayothaya"; if ($@ran == 11) set .Map$,"splendide"; if ($@ran == 10) set .Map$,"hugel"; if ($@ran == 9) set .Map$,"yuno"; if ($@ran == 8) set .Map$,"comodo"; if ($@ran == 7) set .Map$,"xmas"; if ($@ran == 6) set .Map$,"aldebaran"; if ($@ran == 5) set .Map$,"izlude"; if ($@ran == 4) set .Map$,"payon"; if ($@ran == 3) set .Map$,"geffen"; if ($@ran == 2) set .Map$,"morocc"; if ($@ran == 1) set .Map$,"prontera"; sleep2 1000; set $@ran2, rand(1,5); if ($@ran2 == 5) set .Mushrooms,"5"; if ($@ran2 == 4) set .Mushrooms,"4"; if ($@ran2 == 3) set .Mushrooms,"3"; if ($@ran2 == 2) set .Mushrooms,"2"; if ($@ran2 == 1) set .Mushrooms,"1"; announce "Find the Mushroom : The Mushroom has spawned in "+ .Map$ +"!",0; sleep2 10000; announce "Find the Mushroom : " + .Mushrooms + " Mushrooms have spawned in "+ .Map$ +"!",0; sleep2 10000; monster .Map$,0,0,"Don't kill me please!",1084,.Mushrooms,"Find the Mushroom::OnMobKilled"; end; OnMobKilled: mapannounce .Map$,"We've got a winner: " + strcharinfo(0) + " Congrats!",0; set zeny,zeny+10000000; getitem .ItemID,2; set .Event,0; end; }
-
need help about setting time to 12 hours
darking123 replied to darking123's question in General Support
my problem is about the server time -
need help about setting time to 12 hours
darking123 replied to darking123's question in General Support
i am using eathena svn..please help me -
because i am using windows 2003 VPS...my time is 8:30pm but when i @time ingame it tells 24 hours time not 12 hours,,,but my time is set to 12 hours anyone??
-
thank you
-
i want that Fadhgridh will be only in the menu /* 15,prtg_cas01,Kriemhild,Agit#prtg_cas01,1 // kRO : Creamhilt 16,prtg_cas02,Swanhild,Agit#prtg_cas02,1 // kRO : Sbanhealt 17,prtg_cas03,Fadhgridh,Agit#prtg_cas03,1 // kRO : Lazrigees 18,prtg_cas04,Skoegul,Agit#prtg_cas04,1 // kRO : Squagul 19,prtg_cas05,Gondul,Agit#prtg_cas05,1 // kRO : Guindull prontera castles ... so only need to use agitcheck(), not agitcheck2() */ prontera,157,197,5 script WoE Prize 734,{ // setcastledata "prtg_cas05", 1, getcharid(2); // just testing .. if ( agitcheck() ) { mes "a war is currently in progress"; mes "if your guild owned a castle ask your guild master to see me to claim the reward"; close; } set .@menu, select(.menu$) -1; if ( getcastledata("prtg_cas0"+( .@menu +1 ), 1) == getcharid(2) ) { if ( $castle_claimed & pow(2, .@menu) ) { mes "your guild already received the reward for "+ .castlename$[.@menu]; close; } else if ( getguildmasterid( getcharid(2) ) == getcharid(0) ) { mes "receiving the reward for "+ .castlename$[.@menu]; getitem 674, 10 * (5 - .@menu); // some mathematics ... getitem 12334,1; set $castle_claimed, $castle_claimed | pow(2, .@menu); close; } else { mes "ask your guild master to see me"; close; } } mes "your guild failed to take "+ .castlename$[.@menu]; mes "if your guild owned a castle ask your guild master to claim reward from me"; close; OnAgitEnd: set $castle_claimed, 0; // everytime woe ends the variable resets end; OnInit: setarray .castlename$, "Kriemhild", "Swanhild", "Fadhgridh", "Skoegul", "Gondul"; for ( set .@i, 0; .@i < 5; set .@i, .@i +1 ) set .menu$, .menu$ + .castlename$[.@i] +":"; }
-
how to stop the server to the right way to avoid roll back?
darking123 posted a question in General Support
how to stop the server to the right way to avoid roll back? -
what link in eathena is it?
-
because after we @duel...we will wait again for 60 min..how to disable it to make it every 1 min you can duel again?
-
about setting non dropable for GM level
darking123 replied to darking123's question in General Support
works thank you -
about setting non dropable for GM level
darking123 replied to darking123's question in General Support
gepard not working -
about this http://rathena.org/board/topic/53697-free-10-refiner-repairman/ please edit it for me...make it my chance to refine it..not in +10 immediately without breaking the item
-
about this script how will edit it so from gm level 1 until gm level 80,,,they cannot drop and items while gm level 81 and above and also GM level (normal players)0 can drop items // The minimum level for a GM to be unable to distribute items. // You should set this to the same level @item is set to in the atcommand.conf // NEVER SET THIS VALUE TO 0, or you will block drop/trade for normal players gm_cant_drop_min_lv: 1 //The trust level for your GMs. Any GMs ABOVE this level will be able to distribute items //ie: Use Storage/Guild Storage, Drop Items, Use Vend, Trade items. gm_cant_drop_max_lv: 0
-
need help about toasty woe controller
darking123 replied to darking123's question in Scripting Support
there are 2 box beside start time. . What wil i put in first box and second box if i want to start at hour 20 and stop at hour 21 -
nice idea. . Does ths work in eathena
-
need help about toasty woe controller
darking123 replied to darking123's question in Scripting Support
where will i put the script after generating? there are 2 box beside start time. . What wil i put in first box and second box if i want to start at hour 20 and stop at hour 21 -
i want to set it to 8pm-9pm everyday GMT+8 and woe will only be held in fadhgridh please edit it and help me thank you //====================================================================================================== //= Toasty's WoE Controller (formerly WoE Info Banner) //===== By: ============================================================================================ //= ToastOfDoom (aka: iHeart) //===== Current Version: =============================================================================== //= 1.22 //===== Description: =================================================================================== //= A WoE Controller function which controls castle based WoE by utilising npc events. //= Includes a NPC that provides information on the next WoE session //= //= This script is kinda @reloadscript/@loadnpc safe, provided that someone clicks the NPCs afterwards //= to start the OnInit function. That said..it is recommended that you don't use @reloadscript/@loadnpc //= but reset your server. //===== Changelog: ===================================================================================== //= 1.22 //= - Fixed an issue regarding the controller getting confused when using @reloadscript/loadnpc while //= WoE was still active. (thanks to annie for pointing out) //= 1.21 //= - Fixed a misspelt variable name (thanks to rahuldev345 for pointing out) //= 1.20 //= - Project renamed to 'Toasty's WoE Controller'. The script originally was only used to display WoE //= times then I 1st wrote it 3yrs ago and I feel it's purpose is more to control WoE these days. So //= name change to better reflect purpose. //= - Added support for novice WoE. Region teleport goes to the Novice Warper NPC (default in prontera) //= Change position in .region_maps, .region_x, .region_y if needed. //= - Region warp now only displays regions that have castles used at least once. (eg. If you don't //= configure any castles for Payon region, payon will not show up) //= - Optimised WoE Active/Inactive map notifier. Old method used too many loops for something that //= can happen alot. //= - Adjusted menus to be abit more friendly. 'next's will always display before 'menu's //= - Fixed bug with WoE autostarting when only configured for 2 sessions in one day //= - Added some nifty code that prevents catastrophic failure of the script if you try to run a trunk //= version on a stable server (ie. if you do, it will show an error message, but script will still //= run perfectly fine - check out WoEToggler function for those that want to peek at it =P) //= 1.11 //= - Fixed timer glitch when players only configured sessions for one day of the week //= - Adjusted timer to show remaining time more accurately //= - Modified .num_woes calculation due to bug regarding 0's being counted as unset values in arrays //= 1.10 //= - Expanded script to allow castle based configuration //= - Moved away from portal based woe control. Now using donpcevents to OnAgitEnd/2 events. Provided //= castles are linked to the main agit commands in this manner, they will be controllable using this //= script. //= - Added an onLoadMap WoE available notifier. Can be disabled by setting .notify_woe to 0 in the //= CONFIG section. //= - Did some funky color coding. //= - Added Coordinate based warping per region (see .region_x & .region_y in the CONSTANTS section) //= 1.02 //= - Added delwaitingroom to banner npc to prevent memory leaks from bug #2325 //= - To reduce spamming of waitingroom packets to players banner NPC only now updates when the banner //= text changes. Thus min time between updates is now 1sec regardless of setting. //= - Added setting for rate which banner time is updated (.banner_refresh_rate) in the CONFIG section. //= - Added agitstart2/end2 to provide WoE2 support (Hope it works //= 1.01 //= - Hardcoded in refresh value for banner npc instead of getting it from config from WoEInfoBase. Had //= issues starting the script after @reloadscript/@loadnpc //====================================================================================================== - script WoEInfoBase -1,{ OnStartMenu: if(.init == 0) donpcevent strnpcinfo(3)+"::OnInit"; OnStartMenu2: mes "The " + ((.state)?"^00DD00current":"^DD0000next") + "^000000 WoE session is: "; mes " "; mes "Day: ^0000DD" + .daysOfWeek$[.woe_day[.woe_index]]; mes "^000000Start time: ^00DD00" + .woe_0_str$[.woe_index]; mes "^000000End time: ^DD0000" + .woe_1_str$[.woe_index]; mes "^000000Region:"; set .@state_strs$, ".woe_state_str_" + .woe_state[.woe_index] + "$"; for(set .@i, 0; .@i < .num_regions; set .@i, .@i + 1) { set .@output$, getd(.@state_strs$ + "[" + .@i + "]"); if(.@output$ != "") mes "^000000- ^0000DD" + .@output$; } next; if(getgmlevel() >= .gm_access) select( "Warp to Castle Grounds", "View Castle Owners", "View all WoE times", ((!.state)?"Start next WoE":"End current WoE"), ((.state)?"":"Skip next WoE session") ); else select( "Warp to Castle Grounds", "View Castle Owners", "View all WoE times"); switch(@menu) { case 1: //warp mes "Which region would you like to warp to?"; next; select(.region_warp$[.woe_state[.woe_index]]); if(@menu < 1 || @menu > .num_regions) close; close2; warp .region_maps$[@menu - 1], .region_x[@menu - 1], .region_y[@menu - 1]; end; case 2: //view set .@woe_state_array$, ".woe_state_" + .woe_state[.woe_index]; for(set .@i, 0; .@i < .num_regions; set .@i, .@i + 1) { set .@k, 0; set .@castles$, ".castles_" + .regions$[.@i] + "$"; set .@castle_check, getd(.@woe_state_array$ + "[" + .@i + "]"); while(.@castle_check && .@k < .num_castles[.@i]) { if(.@castle_check & (1 << .@k)) { set .@map$, getd(.@castles$+"["+.@k+"]"); if (GetCastleData(.@map$,1)) { dispbottom "The [" + GetCastleName(.@map$) + "] castle of the [" + .region_names$[.@i] + "] region is currently held by the [" + GetGuildName(GetCastleData(.@map$,1)) + "] guild."; } else { dispbottom "The [" + GetCastleName(.@map$) + "] castle of the [" + .region_names$[.@i] + "] region is currently unoccupied."; } set .@castle_check, .@castle_check - (1 << .@k); } set .@k, .@k + 1; } } break; case 3: //woe times for(set .@i, 0; .@i < .num_woes; set .@i, .@i + 1) { dispbottom "- " + .daysOfWeek$[.woe_day[.@i]] + " " + .woe_0_str$[.@i] + "-" + .woe_1_str$[.@i]; set .@woe_state_str_array$, ".woe_state_str_" + .woe_state[.@i] + "$"; for(set .@k, 0; .@k < .num_regions; set .@k, .@k + 1) { set .@output$, getd(.@woe_state_str_array$ + "[" + .@k + "]"); if(.@output$ != "") dispbottom " " + .@output$; } } break; case 4: //start next; if(getgmlevel() <.gm_access) close; mes "^FF0000Are you sure you want to " + ((!.state)?"start the next WoE session?":"end the current WoE session?"); next; if(select("Yes:No") == 2) break; set .remainTime, 0; //might not work sometimes...you have like a 500ms window out of 505ms i guess.. sleep2 .timer_refresh_rate; //wait abit so the menu doesn't screw up (how long it takes for the timer to update) break; case 5: //skip next; if(getgmlevel() <.gm_access || .state) close; mes "^FF0000Are you sure you want to skip the next WoE session^000000"; next; if(select("Yes:No") == 2) break; if(.state) { //you really can't do this with woe active next; mes "Sorry, in the time you took making your decision, WoE started"; mes "Please either manually end it first or wait"; break; } set .woe_index, (.woe_index + 1) % .num_woes; donpcevent strnpcinfo(3)+"::OnUpdateCountTick"; sleep2 .timer_refresh_rate; break; default: close; } goto OnStartMenu2; OnInit: //-----------------------------------------------------------------------------------------// //CONFIG START // //-----------------------------------------------------------------------------------------// set .gm_access, 60; //WoE timings needs to be ordered ascendingly unless you want to do weird //stuff like skip a region every other week or so... //Also times can't overlap. Uses second of day(gettimetick(1)) for timing // eg 1am -> 3600, 2:30pm -> 52200, midnight -> 86400 (anything past that doesn't work) //Note: woe_0 is start times, woe_1 is end times. Ignore how it's called but // don't change it either since it's dynamically used // Also..woe has to end on the same day it starts (it's easier that way..) setarray .woe_day[0], 0, 1, 2, 3, 4, 5, 6; setarray .woe_0[0], 46800,46800,46800,46800,46800,46800,46800; setarray .woe_1[0], 50400,50400,50400,50400,50400,50400,50400; setarray .woe_state[0], 0, 1, 2, 3, 4, 5, 6; //WoE state settings. Every WoE session can be defined as a particular state of castle configuration. //.woe_state_#[%] = $ // # - state number // % - region number // $ - binary representation of castles that are active for that region in that state ( // (ie. 0 is no castles, 5 is castle 0 and 2 (2^0 + 2^2 = 5)) setarray .woe_state_0[0],0,2,0,0,0,0,0; setarray .woe_state_1[0],1,0,0,0,0,0,0; setarray .woe_state_2[0],2,0,0,0,0,0,0; setarray .woe_state_3[0],4,0,0,0,0,0,0; setarray .woe_state_4[0],8,0,0,0,0,0,0; setarray .woe_state_5[0],16,0,0,0,0,0,0; setarray .woe_state_6[0],0,1,0,0,0,0,0; //Setting for if script handles WoE controller function. Disable agit_controller.txt if you are using this. //For if you want to use something else to handle your woe stuff but only this script //to show info (1 - on, 0 - off...duh) set .active_woe, 1; //WoE inactive on map notifier. Basically notifies player if the castle they are entering is //WoE active or not set .notify_woe, 1; //-----------------------------------------------------------------------------------------// //CONFIG END // //-----------------------------------------------------------------------------------------// //-----------------------------------------------------------------------------------------// //CONSTANTS START - Don't touch this unless you know what you are doing // //-----------------------------------------------------------------------------------------// //castle maps by region setarray .castles_prtg$[0],"prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05"; setarray .castles_payg$[0],"payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05"; setarray .castles_gefg$[0],"gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05"; setarray .castles_aldeg$[0],"aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05"; setarray .castles_arug$[0],"arug_cas01","arug_cas02","arug_cas03","arug_cas04","arug_cas05"; setarray .castles_schg$[0],"schg_cas01","schg_cas02","schg_cas03","schg_cas04","schg_cas05"; setarray .castles_novi$[0],"nguild_alde","nguild_gef","nguild_pay","nguild_prt"; //woe kill functions for each castle setarray .woe_kill_prtg$[0],"Agit#prtg_cas01::OnAgitEnd","Agit#prtg_cas02::OnAgitEnd","Agit#prtg_cas03::OnAgitEnd","Agit#prtg_cas04::OnAgitEnd","Agit#prtg_cas05::OnAgitEnd"; setarray .woe_kill_payg$[0],"Agit#payg_cas01::OnAgitEnd","Agit#payg_cas02::OnAgitEnd","Agit#payg_cas03::OnAgitEnd","Agit#payg_cas04::OnAgitEnd","Agit#payg_cas05::OnAgitEnd"; setarray .woe_kill_gefg$[0],"Agit#gefg_cas01::OnAgitEnd","Agit#gefg_cas02::OnAgitEnd","Agit#gefg_cas03::OnAgitEnd","Agit#gefg_cas04::OnAgitEnd","Agit#gefg_cas05::OnAgitEnd"; setarray .woe_kill_aldeg$[0],"Agit#aldeg_cas01::OnAgitEnd","Agit#aldeg_cas02::OnAgitEnd","Agit#aldeg_cas03::OnAgitEnd","Agit#aldeg_cas04::OnAgitEnd","Agit#aldeg_cas05::OnAgitEnd"; setarray .woe_kill_arug$[0],"Manager#aru01_02::OnAgitEnd","Manager#aru02_02::OnAgitEnd","Manager#aru03_02::OnAgitEnd","Manager#aru04_02::OnAgitEnd","Manager#aru05_02::OnAgitEnd"; setarray .woe_kill_schg$[0],"Manager#sch01_02::OnAgitEnd","Manager#sch02_02::OnAgitEnd","Manager#sch03_02::OnAgitEnd","Manager#sch04_02::OnAgitEnd","Manager#sch05_02::OnAgitEnd"; setarray .woe_kill_novi$[0],"Agit_N01::OnAgitEnd","Agit_N02::OnAgitEnd","Agit_N03::OnAgitEnd","Agit_N04::OnAgitEnd"; //region prefixs setarray .regions$[0],"prtg","payg","gefg","aldeg","arug","schg","novi"; //region info setarray .region_names$[0],"Prontera", "Payon", "Geffen", "Aldebaran", "Arunafeltz", "Schwarzwald", "Novice Castles"; setarray .region_maps$[0],"prt_gld", "pay_gld", "gef_fild13", "alde_gld", "aru_gld", "sch_gld", "prontera"; //coords to warp player to region (0 is random) setarray .region_x[0],0, 0, 0, 0, 0, 0, 148; setarray .region_y[0],0, 0, 0, 0, 0, 0, 163; setarray .waitMsg$[0], "WoE Starts: ", "WoE Ends: "; setarray .startMsg$[0], "WoE is Starting", "WoE is Ending"; set .ticks_in_day, 86400; //mmm...magic numbers setarray .daysOfWeek$[0], "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"; set .timer_refresh_rate, 500; //how many ms per timer refresh...keep less than 1000 (in milliseconds) set .change_state_sleep, 3000; //how long to show "WoE is Start|End-ing" msg for in ms. (in milliseconds) //Make sure WoE sessions are longer than this xD set .banner_refresh_rate, 10; //how many seconds per banner refresh...keep 1 or above (in seconds) //-----------------------------------------------------------------------------------------// //CONSTANTS END // //-----------------------------------------------------------------------------------------// set .num_regions, getarraysize(.regions$); set .num_woes, getarraysize(.woe_1); //force WoE to end if active callfunc "WoEToggler", 0; for(set .@i, 0; .@i < .num_regions; set .@i, .@i + 1) { //count num castles per region set .num_castles[.@i], getarraysize(getd(".castles_" + .regions$[.@i] + "$")); } //convert timestamps to readable format for(set .@i, 0; .@i < .num_woes; set .@i, .@i + 1) { set .@hrs, .woe_0[.@i] / 3600; set .@mins, .woe_0[.@i] % 3600 / 60; set .@output$, ((.@hrs % 12)?.@hrs%12:12) + ":" + ((.@mins < 10)?"0"+.@mins:.@mins) + " " + ((.@hrs > 12)?"PM":"AM"); set .woe_0_str$[.@i], .@output$; set .@hrs, .woe_1[.@i] / 3600; set .@mins, .woe_1[.@i] % 3600 / 60; set .@output$, ((.@hrs % 12)?.@hrs%12:12) + ":" + ((.@mins < 10)?"0"+.@mins:.@mins) + " " + ((.@hrs > 12)?"PM":"AM"); set .woe_1_str$[.@i], .@output$; } //calc number of woe states and consolidate states to create list of castles used set .num_states, 0; while(getarraysize(getd(".woe_state_" + (.num_states)))) { set .@state$, ".woe_state_" + .num_states; set .@i, 0; while(.@i < getarraysize(getd(.@state$))) { set .castleUsage[.@i], .castleUsage[.@i] | getd(.@state$ + "[" + .@i + "]"); set .@i, .@i + 1; } set .num_states, .num_states + 1; } for(set .@i, 0; .@i < .num_states; set .@i, .@i + 1) { set .@woe_state_array$, ".woe_state_" + .@i; for(set .@k, 0; .@k < .num_regions; set .@k, .@k + 1) { if(.castleUsage[.@k] > 0) { set .@castles$, ".castles_" + .regions$[.@k] + "$"; set .@castle_check, getd(.@woe_state_array$ + "[" + .@k + "]"); if(.@castle_check == 0) { //region not in this state //region warp menu string set .region_warp$[.@i], .region_warp$[.@i] + "^DD0000" + .region_names$[.@k] + "^000000:"; continue; } else { if(.@castle_check >= ((1 << .num_castles[.@k]) - 1)) { //includes all castles...just list as region. setd(".woe_state_str_" + .@i + "$[" + .@k + "]", .region_names$[.@k]); //region warp menu string set .region_warp$[.@i], .region_warp$[.@i] + "^00DD00" + .region_names$[.@k] + "^000000:"; } else { set .@j, 0; set .@output$, ""; while(.@j < .num_castles[.@k]) { if(.@castle_check & (1 << .@j)) { set .@output$, .@output$ + GetCastleName(getd(.@castles$+"["+.@j+"]")); set .@castle_check, .@castle_check - (1 << .@j); if(.@castle_check) { if(.@output$ != "") set .@output$, .@output$ + ", "; } else break; } set .@j, .@j + 1; } setd(".woe_state_str_" + .@i + "$[" + .@k + "]", .region_names$[.@k] + " ("+ .@output$ + ")"); //region warp menu string set .region_warp$[.@i], .region_warp$[.@i] + "^00DD00" + .region_names$[.@k] + " ("+ .@output$ + ")^000000:"; } } } else { set .region_warp$[.@i], .region_warp$[.@i] + ":"; } } } donpcevent strnpcinfo(3)+"::OnFindCurIndex"; donpcevent strnpcinfo(3)+"::OnUpdateCountTick"; if(.active_woe) { if(.notify_woe) { //set mapflag for all castle maps for(set .@i, 0; .@i < .num_regions; set .@i, .@i + 1) { set .@region_array$, ".castles_" + .regions$[.@i] + "$"; for(set .@k, 0; .@k < .num_castles[.@i]; set .@k, .@k + 1) { setmapflag getd(.@region_array$ + "[" + .@k + "]"), mf_loadevent; setd(".loadmap_region_" + getd(.@region_array$ + "[" + .@k + "]"), .@i + 1); setd(".loadmap_castleIndex_" + getd(.@region_array$ + "[" + .@k + "]"), .@k); } } } //activates WoE if needed donpcevent strnpcinfo(3)+"::OnDoWoE"; } //flag that init occured set .init, 1; OnWoETimer: //timer stuff while (1) { set .remainTime, .count_tick - gettimetick(2); set .bannerTimer, .remainTime - (.remainTime % .banner_refresh_rate) + .banner_refresh_rate; set .min, .bannerTimer / 60; set .sec, .bannerTimer - .min * 60; set .hr, .min / 60; set .min, .min - .hr * 60; set .roomMsg$, .waitMsg$[.state] + .hr + ":" + ((.min < 10 )?"0":"") + .min + ":" + ((.sec < 10 )?"0":"") + .sec; sleep .timer_refresh_rate; if(.remainTime <= 0) { if(.active_woe) { donpcevent strnpcinfo(3)+"::OnDoWoE"; } set .roomMsg$, .startMsg$[.state]; set .woe_index, (.woe_index + .state) % .num_woes; //go to next index if needed set .state, (.state + 1) % 2; //flip state donpcevent strnpcinfo(3)+"::OnUpdateCountTick"; sleep .change_state_sleep; } } end; //obligatory end =D OnUpdateCountTick: set .count_tick, getd(".woe_" + .state + "[" + .woe_index + "]"); set .count_tick, gettimetick(2) + .count_tick - gettimetick(1) + (.woe_day[.woe_index] - gettime(4) + 7) % 7 * .ticks_in_day; if(gettimetick(2) > .count_tick) set .count_tick, .count_tick + 7 * .ticks_in_day; end; OnFindCurIndex: set .@cur_day, gettime(4); set .@cur_tick, gettimetick(1); set .woe_index, 0; set .state, 0; for(set .@i, 0; .@i < .num_woes; set .@i, .@i + 1) { if(.woe_day[.@i] < .@cur_day) continue; if(.woe_day[.@i] == .@cur_day) { if(.woe_0[.@i] >= .@cur_tick) { set .woe_index, .@i; set .state, 0; break; } if(.woe_1[.@i] >= .@cur_tick) { set .woe_index, .@i; set .state, 1; break; } } if(.woe_day[.@i] > .@cur_day) { set .woe_index, .@i; set .state, 0; break; } } end; //On map notifier //Comment out OnPCLoadMapEvent label if .notify_woe is disabled to prevent unnecessary triggering OnPCLoadMapEvent: if(.state && .notify_woe) { getmapxy(.@map$, .@x, .@y, 0); set .@region, getd(".loadmap_region_" + .@map$) - 1; if(.@region >= 0) { set .@castleIndex, getd(".loadmap_castleIndex_" + .@map$); if(getd(".woe_state_" + .woe_state[.woe_index] + "[" + .@region + "]") & 1 << .@castleIndex) dispbottom "The [" + GetCastleName(.@map$) + "] castle is available for conquering during this WoE session"; else dispbottom "The [" + GetCastleName(.@map$) + "] castle is NOT available for conquering during this WoE session"; } } end; //------------------------------------------------------------------------------ // WoE Controller Stuff Here //------------------------------------------------------------------------------ OnDoWoE: if((.state == 0 && .init) || (.state == 1 && !agitcheck())) { //starting callfunc "WoEToggler", 1; //kills WoE in all castles that shouldn't have WoE set .@woe_state_array$, ".woe_state_" + .woe_state[.woe_index]; for(set .@i, 0; .@i < .num_regions; set .@i, .@i + 1) { set .@castles$, ".castles_" + .regions$[.@i] + "$"; set .@castle_check, getd(.@woe_state_array$ + "[" + .@i + "]"); for(set .@k, 0; .@k < .num_castles[.@i]; set .@k, .@k + 1) { set .@map$, getd(.@castles$+"["+.@k+"]"); if((.@castle_check & (1 << .@k)) == 0) { donpcevent getd(".woe_kill_" + .regions$[.@i] + "$[" + .@k + "]"); } } } announce "The War Of Emperium has begun!",bc_all; donpcevent strnpcinfo(3)+"::OnDisplayOwners"; } else { //ending if(agitcheck()) { callfunc "WoEToggler", 0; announce "The War Of Emperium is over!",bc_all; donpcevent strnpcinfo(3)+"::OnDisplayOwners"; } } end; OnDisplayOwners: //displays based on current region set .@woe_state_array$, ".woe_state_" + .woe_state[.woe_index]; for(set .@i, 0; .@i < .num_regions; set .@i, .@i + 1) { set .@k, 0; set .@castle_check, getd(.@woe_state_array$ + "[" + .@i + "]"); set .@castles$, ".castles_" + .regions$[.@i] + "$"; while(.@castle_check && .@k < .num_castles[.@i]) { if(.@castle_check & (1 << .@k)) { set .@map$, getd(.@castles$+"["+.@k+"]"); if (GetCastleData(.@map$,1)) { announce "The [" + GetCastleName(.@map$) + "] castle of the [" + .region_names$[.@i] + "] region is currently held by the [" + GetGuildName(GetCastleData(.@map$,1)) + "] guild.",bc_all; } else { announce "The [" + GetCastleName(.@map$) + "] castle of the [" + .region_names$[.@i] + "] region is currently unoccupied.",bc_all; } set .@castle_check, .@castle_check - (1 << .@k); } set .@k, .@k + 1; } } end; } prontera,163,194,4 script WoE Info 837,{ if(getwaitingroomstate(3, strnpcinfo(3)) == -1) donpcevent strnpcinfo(3)+"::OnInit"; doevent "WoEInfoBase::OnStartMenu"; end; OnInit: while (1) { //only updates if msg is different set .banner$, getwaitingroomstate(4, strnpcinfo(3)); if(getvariableofnpc(.roomMsg$, "WoEInfoBase") != .banner$) { delwaitingroom; waitingroom getvariableofnpc(.roomMsg$, "WoEInfoBase"), 0; } sleep 500; } end; } //zomg! it duplicates!! morocc,153,97,5 duplicate(WoE Info) WoE Info#2winfo 837 geffen,112,63,5 duplicate(WoE Info) WoE Info#2winfo 837 payon,168,227,5 duplicate(WoE Info) WoE Info#2winfo 837 izlude,123,115,5 duplicate(WoE Info) WoE Info#2winfo 837 aldebaran,144,123,5 duplicate(WoE Info) WoE Info#2winfo 837 xmas,154,135,5 duplicate(WoE Info) WoE Info#2winfo 837 comodo,202,150,5 duplicate(WoE Info) WoE Info#2winfo 837 yuno,164,48,5 duplicate(WoE Info) WoE Info#2winfo 837 amatsu,191,101,5 duplicate(WoE Info) WoE Info#2winfo 837 gonryun,157,122,5 duplicate(WoE Info) WoE Info#2winfo 837 umbala,90,157,5 duplicate(WoE Info) WoE Info#2winfo 837 ayothaya,145,116,5 duplicate(WoE Info) WoE Info#2winfo 837 einbroch,54,203,5 duplicate(WoE Info) WoE Info#2winfo 837 lighthalzen,152,100,5 duplicate(WoE Info) WoE Info#2winfo 837 hugel,93,152,5 duplicate(WoE Info) WoE Info#2winfo 837 rachel,120,146,5 duplicate(WoE Info) WoE Info#2winfo 837 //--------------------------------------------------------------------------------------------------------------------- function script WoEToggler { //<state> = 0|1 if(getarg(0)) { AgitStart; } else { AgitEnd; } return; } help please
-
// ______ __ __ // /\ _ \/\ \__/\ \ // __\ \ \L\ \ \ ,_\ \ \___ __ ___ __ // /'__`\ \ __ \ \ \/\ \ _ `\ /'__`\/' _ `\ /'__`\ ///\ __/\ \ \/\ \ \ \_\ \ \ \ \/\ __//\ \/\ \/\ \L\.\_ //\ \____\\ \_\ \_\ \__\\ \_\ \_\ \____\ \_\ \_\ \__/.\_\ // \/____/ \/_/\/_/\/__/ \/_/\/_/\/____/\/_/\/_/\/__/\/_/ // _ _ _ _ _ _ _ _ _ _ _ _ _ // / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ //( e | n | g | l | i | s | h ) ( A | t | h | e | n | a ) // \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ // //-------------------------------------------------------------- // eAthena Log Configuration File //-------------------------------------------------------------- // Note 1: Value is a config switch (on/off, yes/no or 1/0) // Note 2: Value is in percents (100 means 100%) // Note 3: Value is a bit field. If no description is given, // assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun) //-------------------------------------------------------------- // Enable Logs? (Note 3) // 0x0000 - Don't log at all // 0x0001 - (T) Log trades // 0x0002 - (V) Log vending transactions // 0x0004 - (P) Log items drop/picked by players // 0x0008 - (L) Log items drop/looted by monsters // 0x0010 - (S) Log NPC transactions (buy/sell) // 0x0020 - (N) Log Script transactions (items deleted/acquired through quests) // 0x0040 - (D) Log items stolen from mobs (Steal/Gank) // 0x0080 - (C) Log player-used items // 0x0100 - (O) Log produced/ingredient items // 0x0200 - (U) Log MVP prize items // 0x0400 - (A) Log player created/deleted items (through @/# commands) // 0x0800 - (R) Log items placed/retrieved from storage. // 0x1000 - (G) Log items placed/retrieved from guild storage. // 0x2000 - (E) Log mail system transactions. // 0x4000 - (I) Log auction system transactions. // 0x8000 - ( Log buying store transactions // Example: Log trades+vending+script items+created items: 1+2+32+1024 = 1059 enable_logs: 0x0400 // Use MySQL Logs? [sql Version Only] (Note 1) sql_logs: yes // LOGGING FILTERS // ============================================================= // if any condition is true then the item will be logged // 0 = Don't log at all // 1 = Log any item // Advanced Filter Bits by item type: || // 0002 - Healing items (0) // 0004 - Etc Items(3) + Arrows (10) // 0008 - Usable Items(2) + Lures,Scrolls(11) + Usable Cash Items(18) // 0016 - Weapon(4) // 0032 - Shields,Armor,Headgears,Accessories,etc(5) // 0064 - Cards(6) // 0128 - Pet Accessories(8) + Eggs(7) (well, monsters don't drop 'em but we'll use the same system for ALL logs) // 0256 - Log expensive items ( >= price_items_log) // 0512 - Log big amount of items ( >= amount_items_log) // 1024 - Log refined items (if their refine >= refine_items_log ) // 2048 - Log rare items (if their drop chance <= rare_items_log ) // Examples: (log filters) // log_filter: 1 = logs ANY items // log_filter: 2 = logs only HEALING items // log_filter: 4 = logs only Etc Items and Arrows // log_filter: 64 = logs only Cards // log_filter: 322 = logs only Healing items, Cards and those items which price is >= price_items_log // log_filter: 4080 = logs all items (including all rare, big amount) exept healing, etc, arrows and useble ones log_filter: 1 // Log Items which Refine >= refine_items_log refine_items_log: 5 // Log Items whith min drop rate <= rare_items_log // 1 = 0.01%, 100 = 1% drop chance, etc rare_items_log: 100 // don't log it if the current item buy price < price_items_log price_items_log: 1000 // don't log it if the current item amount < amount_items_log amount_items_log: 100 //============================================================= // Log Dead Branch Usage (Note 1) log_branch: no // Track Zeny Changes // Filter settings // 0 - don't log; 1 - log any zeny changes; 2.....1000000 - minimal absolut logging zeny value log_zeny: 1 // Log MVP Monster Drops (Note 1) // Outdated. Use Pick_Log instead. But this log could be useful to keep track slayed MVPs log_mvpdrop: no // Log GM Commands (set to minimum level of Logged Commands) log_gm: 99 // Log NPC 'logmes' commands (Note 1) log_npc: no // Log CHAT (Global, Whisper, Party, Guild, Main chat) (Note 3) // LOGGING FILTERS // ============================================================= // 0 = Don't log at all // 1 - Log Global messages // 2 - Log Whisper messages // 4 - Log Party messages // 8 - Log Guild messages // 16 - Log Main chat messages // Example: // log_chat: 5 = logs both Whisper & Party messages // log_chat: 8 = logs only Guild messages // log_chat: 31 = logs everything log_chat: 0 // Disable chat logging when WoE is running? (Note 1) log_chat_woe_disable: no // Logging tables/files // Following settings specify where to log to. If 'sql_logs' is // enabled, SQL tables are assumed, otherwise flat files. // Dead Branch Log log_branch_db: log/branchlog.log //log_branch_db: branchlog // Drops & Pickups log_pick_db: log/picklog.log //log_pick_db: picklog // Zeny log_zeny_db: log/zenylog.log //log_zeny_db: zenylog // MVP Drops log_mvpdrop_db: log/mvplog.log //log_mvpdrop_db: mvplog // GM Log log_gm_db: ro_logdb/atcommandlog.log //log_gm_db: atcommandlog // NPC Log log_npc_db: log/npclog.log //log_npc_db: npclog // CHAT Log log_chat_db: log/chatlog.log //log_chat_db: chatlog import: conf/import/log_conf.txt about sa // Enable Logs? (Note 3) // 0x0000 - Don't log at all // 0x0001 - (T) Log trades // 0x0002 - (V) Log vending transactions // 0x0004 - (P) Log items drop/picked by players // 0x0008 - (L) Log items drop/looted by monsters // 0x0010 - (S) Log NPC transactions (buy/sell) // 0x0020 - (N) Log Script transactions (items deleted/acquired through quests) // 0x0040 - (D) Log items stolen from mobs (Steal/Gank) // 0x0080 - © Log player-used items // 0x0100 - (O) Log produced/ingredient items // 0x0200 - (U) Log MVP prize items // 0x0400 - (A) Log player created/deleted items (through @/# commands) // 0x0800 - ® Log items placed/retrieved from storage. // 0x1000 - (G) Log items placed/retrieved from guild storage. // 0x2000 - (E) Log mail system transactions. // 0x4000 - (I) Log auction system transactions. // 0x8000 - ( Log buying store transactions // Example: Log trades+vending+script items+created items: 1+2+32+1024 = 1059 enable_logs: 0x0400 naguguluhan kasi ako jan paano kung lahat ng logs gusto ko enable anung value ilalagay ko?? and also yung name ng db ko sa logs is ro_logdb not logs....anu ang eedit ko sa naka codebox???sql server kami not txt please edit it for me