Jump to content

myieee

Members
  • Posts

    83
  • Joined

  • Last visited

Profile Information

  • Gender
    Not Telling

Recent Profile Visitors

2,016 profile views

myieee's Achievements

Poring

Poring (1/15)

0

Reputation

  1. ive searched everything and tried the method on job_db1 but still failed. So what is the correct way to increase hp of some job . I did the hp factor and multiplicator and no luck on that.
  2. I recompiled my server and this is what happens in my ssh. any idea? https://imgur.com/hvT68zF
  3. I really recommend this guy. he never disappoint me ! I'm new in RO and he answered all of my questions and free consultation . his service is excellent and he was able to teach and guide you every single step . he did a full set up with no problems and your money will be worth it. will definitely hire him again. Thanks Sryx
  4. thanks for the offer. but ill stick with my request. thank you
  5. Hi . I want to put some Cap Damage in some certain skills like cart termination , double strafe . 36k per hit for cart termination and 36k per hit in double strafe can someone guide me . im using eathena thanks
  6. I tried to whisper the npc:event_warp and it didnt show up the warp @edit. nvm. i fixed it already. btw thanks emistry ..
  7. Hi . I would like to request an event warper here are the info 1st. GM Activation 2nd. it should be hide/enable when it activates or whisper by the GM 3rd. There will be 2 warps in the same map with different coordinates (ex : prontera 123 123 and prontera 124 124) 4th. When the players are entering the Event Warper. there will be a chance to go to the destination (50% chance at prontera 123 123) and (50% chance at prontera 124 124) 5th. Im using eAthena thanks rathena and scripter
  8. myieee

    @go command

    if it is then how to add a special case in the src ? or can you give me an example btw im using eathena emulator
  9. I was looking for Capture the Flag Event script that works in eathena. and it seems like it doesnt exist anymore. so if there's a CTF Script that works in eathena .i like the script of Memory Killer CTC with auto reward thank you
  10. myieee

    @go command

    Is it possible to have 4 different coordinates in @go ? for example when i use @go 0 . my spawn coordinate is 145 , 155 so I want to add a different coordinate so it wont be stuck or stay in the same spawn point.
  11. Hi im requesting a Gamble NPC. Instructions 10 tcg to play there are 5 items to win but it has 10% chance to get the item im using eathena .TIA
  12. prontera,165,174,4 script WoE Information 835,{ //If you wish to change the name, search for all 'WoE Information' and replace them with the desired name. //To do: //GM: //Player: Warp to treasury when WoE isn't active? if (getgmlevel()>=$woe_mingmlv) goto L_Main; L_View: mes "[WoE Information]"; mes "Welcome to the WoE Information NPC, the current WoE times are as follows:"; callsub S_Listing2; set @temp$, ""; for (set @i, 0; @i < getarraysize([email protected]_pl_player$); set @i, @i+1) { set @temp$, @temp$+":"[email protected]_pl_playermenu$[@i]; } menu @temp$,-,"Exit",L_Exit; next; if (getmapxy(@ignore$,@ignore,@ignore,1,"WoES3Pl_R"[email protected]_pl_player$[@menu-2]) != -1) { callfunc("WoES3Pl_"[email protected]_pl_player$[@menu-2]); } else { mes "Critical error. Please report this to a GM!"; } next; goto L_View; L_Exit: close; S_Listing: deletearray @ar_id[0], 128; deletearray @ar_town[0], 128; deletearray @ar_castle[0], 128; deletearray @ar_sday[0], 128; deletearray @ar_shour[0], 128; deletearray @ar_smin[0], 128; deletearray @ar_stick[0], 128; deletearray @ar_svar[0], 128; deletearray @ar_eday[0], 128; deletearray @ar_ehour[0], 128; deletearray @ar_emin[0], 128; deletearray @ar_etick[0], 128; deletearray @ar_evar[0], 128; set @results, query_sql("select * from `woe_times` order by `st` ASC",@ar_id,@ar_town,@ar_castle,@ar_sday,@ar_shour,@ar_smin,@ar_stick,@ar_svar,@ar_eday,@ar_ehour,@ar_emin,@ar_etick,@ar_evar,@ignore); for (set @temp,0; @temp<@results; set @temp, @temp+1) { set @temp$, ""; if (gettimetick(2) >= @ar_stick[@temp] && gettimetick(2) < @ar_etick[@temp]) { set @temp$, @temp$+"^339900+"; } else { set @temp$, @temp$+"^FF0000-"; } if (@ar_town[@temp]==127) { set @temp$, @temp$+"^000000All"; } else { set @temp_, @ar_town[@temp]; if (@temp_>=64) { set @temp$, @temp$+"^FFFF00Ar"; set @temp_, @temp_-64; } if (@temp_>=32) { set @temp$, @temp$+"^FF0000Sc"; set @temp_, @temp_-32; } if (@temp_>=16) { set @temp$, @temp$+"^9900CCNo"; set @temp_, @temp_-16; } if (@temp_>=8) { set @temp$, @temp$+"^808080Pr"; set @temp_, @temp_-8; } if (@temp_>=4) { set @temp$, @temp$+"^339900Pa"; set @temp_, @temp_-4; } if (@temp_>=2) { set @temp$, @temp$+"^0066FFGe"; set @temp_, @temp_-2; } if (@temp_==1) set @temp$, @temp$+"^FF9900Al"; set @temp$, @temp$+"^000000"; } set @temp$, @temp$+" "; if (@ar_castle[@temp]==31) { set @temp$, @temp$+"All"; } else { set @temp_, @ar_castle[@temp]; set @tmp, 16; for (set [email protected], 5; [email protected]>0; set [email protected],[email protected]) { if (@temp_>[email protected]) { set @temp$, @[email protected]; set @temp_,@[email protected]; } set @tmp, @tmp/2; } } set @temp$, @temp$+" "; for (set [email protected], 1; [email protected]<3; set [email protected], [email protected]+1) { set @temp$, @temp$+callfunc("daytostr",0,getd("@ar_"+(([email protected]==1)?"s":"e")+"day["[email protected]+"]")); if ([email protected]==1) { set @temp$, @temp$+((@ar_shour[@temp]<10)?"0":"")[email protected]_shour[@temp]+";"+((@ar_smin[@temp]<10)?"0":"")[email protected]_smin[@temp]+"-"; } else { set @temp$, @temp$+((@ar_ehour[@temp]<10)?"0":"")[email protected]_ehour[@temp]+";"+((@ar_emin[@temp]<10)?"0":"")[email protected]_emin[@temp]; } } set @results$,@[email protected]$+":"; } return; S_Listing2: deletearray @ar_id[0], 128; deletearray @ar_town[0], 128; deletearray @ar_castle[0], 128; deletearray @ar_sday[0], 128; deletearray @ar_shour[0], 128; deletearray @ar_smin[0], 128; deletearray @ar_stick[0], 128; deletearray @ar_svar[0], 128; deletearray @ar_eday[0], 128; deletearray @ar_ehour[0], 128; deletearray @ar_emin[0], 128; deletearray @ar_etick[0], 128; deletearray @ar_evar[0], 128; set @results, query_sql("select * from `woe_times` order by `st` ASC",@ar_id,@ar_town,@ar_castle,@ar_sday,@ar_shour,@ar_smin,@ar_stick,@ar_svar,@ar_eday,@ar_ehour,@ar_emin,@ar_etick,@ar_evar,@ignore); if ([email protected]) { mes "There are no current WoE times!"; return; } for (set @temp,0; @temp<@results; set @temp, @temp+1) { mes "--"; set @temp$, ""; if (gettimetick(2) >= @ar_stick[@temp] && gettimetick(2) < @ar_etick[@temp]) { set @temp$, @temp$+"^339900Active: ^000000Towns-"; } else { set @temp$, @temp$+"^FF0000Unactive: ^000000Towns-"; } if (@ar_town[@temp]==127) { set @temp$, @temp$+"^000000All "; } else { set @temp_, @ar_town[@temp]; if (@temp_>=64) { set @temp$, @temp$+"^FFFF00Arunafeltz "; set @temp_, @temp_-64; } if (@temp_>=32) { set @temp$, @temp$+"^FF0000Schwartzvelt "; set @temp_, @temp_-32; } if (@temp_>=16) { set @temp$, @temp$+"^9900CCNovice "; set @temp_, @temp_-16; } if (@temp_>=8) { set @temp$, @temp$+"^808080Prontera "; set @temp_, @temp_-8; } if (@temp_>=4) { set @temp$, @temp$+"^339900Payon "; set @temp_, @temp_-4; } if (@temp_>=2) { set @temp$, @temp$+"^0066FFGeffen "; set @temp_, @temp_-2; } if (@temp_==1) set @temp$, @temp$+"^FF9900Aldebaran "; set @temp$, @temp$+"^000000"; } mes @temp$; set @temp$, ""; if (@ar_castle[@temp]==31) { set @temp$, @temp$+"All Castles "; } else { set @temp_, @ar_castle[@temp]; set @tmp, 16; mes "Castles-"; for (set [email protected], 5; [email protected]>0; set [email protected],[email protected]) { if (@temp_>[email protected]) { set @temp$, @[email protected]; set @temp_,@[email protected]; } set @tmp, @tmp/2; } } mes @temp$; set @temp$, ""; for (set [email protected], 1; [email protected]<3; set [email protected], [email protected]+1) { set @temp$, @temp$+callfunc("daytostr",1,getd("@ar_"+(([email protected]==1)?"s":"e")+"day["[email protected]+"]")); if ([email protected]==1) { set @temp$, @temp$+" "+((@ar_shour[@temp]<10)?"0":"")[email protected]_shour[@temp]+":"+((@ar_smin[@temp]<10)?"0":"")[email protected]_smin[@temp]+"-"; } else { set @temp$, @temp$+" "+((@ar_ehour[@temp]<10)?"0":"")[email protected]_ehour[@temp]+":"+((@ar_emin[@temp]<10)?"0":"")[email protected]_emin[@temp]; } } mes @temp$; } return; L_Main: mes "[WoE Time Setter]"; mes "Hello there, how can I help you GM?"; next; menu "Manage WoE Times",L_ModifyListing,"Start/Stop WoE",L_ManualWoE,"Plug-ins",L_Plugins,"Settings",L_Settings,"Test Player View",L_View,"Exit",-; close; L_Plugins: set @temp$, ""; for (set @i, 0; @i < getarraysize([email protected]_pl_gm$); set @i, @i+1) { set @temp$, @temp$+":"[email protected]_pl_gmmenu$[@i]; } menu @temp$,-,"Reinitialize Plugins",L_Reinit,"Back",L_Main; if (getmapxy(@ignore$,@ignore,@ignore,1,"WoES3Pl_R"[email protected]_pl_gm$[@menu-2]) != -1) { callfunc("WoES3Pl_"[email protected]_pl_gm$[@menu-2]); } else { mes "Error loading function. Please make sure the plugin is named properly!"; } next; goto L_Plugins; L_Reinit: deletearray [email protected]_pl_playermenu$[0], 128; deletearray [email protected]_pl_player$[0], 128; deletearray [email protected]_pl_gmmenu$[0], 128; deletearray [email protected]_pl_gm$[0], 128; donpcevent "::OnLoadPlugins"; dispbottom "Plugins initialized"; sleep2 500; goto L_Plugins; L_ModifyListing: set @results$, ""; callsub S_Listing; menu @results$,-,"Add new time",L_ModifyAdd,"Back",L_Main; set @sel_modify, @menu-1; set @adding, 0; menu "Modify time",L_ModifyTown_Main,"Delete time",-,"Back",L_ModifyListing; if (gettimetick(2)>[email protected]_stick[@sel_modify]&&gettimetick(2)<@ar_etick[@sel_modify]) { dispbottom "The selected WoE is currently active, if you delete it it will automatically stop! Proceed?"; menu "Yes",-,"No",L_ModifyAdd; callfunc("WoE_Status",0,@ar_town[@sel_modify],@ar_castle[@sel_modify]); } query_sql("delete from `woe_times` where `id` = '"[email protected]_id[@sel_modify]+"'"); dispbottom "WoE time deleted!"; set $woe_chatinfo, 0; goto L_ModifyListing; L_ModifyAdd: set @adding, 1; L_ModifyTown_Main: //@sel_modify is passed from the selection of what exisitng time to modify... if (@adding) { set @sel, 0; setarray @sel_town[1], 0, 0, 0, 0, 0, 0, 0; set @set_castle, 0; set @set_time, 0; } else { set @set_castle, 1; set @set_time, 1; set @temp__, 7; set @temp_, @ar_town[@sel_modify]; set @temp, 64; set @sel, 0; for (set [email protected], 7; [email protected]>0; set [email protected], [email protected]) { if (@temp_>[email protected]) { set @sel_town[[email protected]], 1; set @temp_, @[email protected]; set @sel, @sel+1; } else { set @sel_town[[email protected]], 0; } set @temp, @temp/2; } set @temp_, @ar_castle[@sel_modify]; set @temp, 16; set @sel2, 0; for (set [email protected], 5; [email protected]>0; set [email protected], [email protected]) { if (@temp_>[email protected]) { set @sel_castle[[email protected]], 1; set @temp_, @[email protected]; set @sel2, @sel2+1; } else { set @sel_castle[[email protected]], 0; } set @temp, @temp/2; } set @sday, @ar_sday[@sel_modify]; set @shour, @ar_shour[@sel_modify]; set @smin, @ar_smin[@sel_modify]; set @svar, @ar_svar[@sel_modify]; set @eday, @ar_eday[@sel_modify]; set @ehour, @ar_ehour[@sel_modify]; set @emin, @ar_emin[@sel_modify]; set @evar, @ar_evar[@sel_modify]; } dispbottom "Select the town(s) you wish this WoE time to apply to. If the name is green it means it's enabled, red means disabled."; L_ModifyTown_Sub: menu ((@sel_town[1])?"^339900":"^FF0000")+$woe_towns$[1]+":"+((@sel_town[2])?"^339900":"^FF0000")+$woe_towns$[2]+":"+((@sel_town[3])?"^339900":"^FF0000")+$woe_towns$[3]+":"+((@sel_town[4])?"^339900":"^FF0000")+$woe_towns$[4]+":"+((@sel_town[5])?"^339900":"^FF0000")+$woe_towns$[5]+":"+((@sel_town[6])?"^339900":"^FF0000")+$woe_towns$[6]+":"+((@sel_town[7])?"^339900":"^FF0000")+$woe_towns$[7]+":"+((@sel==7)?"^339900":"^FF0000")+$woe_towns$[8],-,"^000000Proceed",L_ModifyCastle_Main,"Back",L_ModifyListing; if (@menu==8) if (@sel<7) { setarray @sel_town[1], 1, 1, 1, 1, 1, 1, 1; set @sel, 7; goto L_ModifyTown_Sub; } else { setarray @sel_town[1], 0, 0, 0, 0, 0, 0, 0; set @sel, 0; goto L_ModifyTown_Sub; } if ([email protected]_town[@menu]) { set @sel_town[@menu], 1; set @sel, @sel+1; goto L_ModifyTown_Sub; } else { set @sel_town[@menu], 0; set @sel, @sel-1; goto L_ModifyTown_Sub; } L_ModifyCastle_Main: if ([email protected]) { dispbottom "You must first select at least one town!"; goto L_ModifyTown_Sub; } set @town_code, 0; set @set_town, 0; if (@sel_town[1]) { set @town_code, @town_code+1; if (@sel==1) set @set_town, 1; } set @temp, 2; for (set [email protected], 2; [email protected]<8; set [email protected], [email protected]+1) { if (@sel_town[[email protected]]) { set @town_code, @[email protected]; if (@sel==1) set @set_town, [email protected]; } set @temp, @temp*2; } if ([email protected]_castle) { set @sel2, 5; setarray @sel_castle[1], 1, 1, 1, 1, 1; if (@sel==1 && @sel_town[5]) { set @sel2, 4; set @sel_castle[5], 0; } } set @set_castle, 1; L_ModifyCastle_Sub: if (@sel>1) { menu ((@sel_castle[1])?"^339900":"^FF0000")+"Castle 1:"+((@sel_castle[2])?"^339900":"^FF0000")+"Castle 2:"+((@sel_castle[3])?"^339900":"^FF0000")+"Castle 3:"+((@sel_castle[4])?"^339900":"^FF0000")+"Castle 4:"+((@sel_castle[5])?"^339900":"^FF0000")+"Castle 5",-,"^000000Proceed",L_ModifyTime_Main,"Back",L_ModifyTown_Sub; if ([email protected]_castle[@menu]) { set @sel_castle[@menu], 1; set @sel2, @sel2+1; } else { set @sel_castle[@menu], 0; set @sel2, @sel2-1; } goto L_ModifyCastle_Sub; } else { menu ((@sel_castle[1])?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_town+"_1$[1]")+":"+((@sel_castle[2])?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_town+"_1$[2]")+":"+((@sel_castle[3])?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_town+"_1$[3]")+":"+((@sel_castle[4])?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_town+"_1$[4]")+((@set_town!=5)?":"+((@sel_castle[5])?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_town+"_1$[5]"):""),-,"^000000Proceed",L_ModifyTime_Main,"Back",L_ModifyTown_Sub; if ([email protected]_castle[@menu]) { set @sel_castle[@menu], 1; set @sel2, @sel2+1; } else { set @sel_castle[@menu], 0; set @sel2, @sel2-1; } goto L_ModifyCastle_Sub; } dispbottom "Select the castle(s) within the previously selected town(s) you wish this WoE time to apply to. If the name is green it means it's enabled, red means disabled."; L_ModifyTime_Main: if ([email protected]) { dispbottom "You must first select at least one castle!"; goto L_ModifyCastle_Sub; } set @cas_code, 0; if (@sel_castle[1]) set @cas_code, @cas_code+1; set @temp, 2; for (set [email protected], 2; [email protected]<6; set [email protected], [email protected]+1) { if (@sel_castle[[email protected]]) set @cas_code, @[email protected]; set @temp, @temp*2; } if ([email protected]_time) { set @sday, 0; set @shour, 0; set @smin, 0; set @svar, 0; set @eday, 0; set @ehour, 0; set @emin, 0; set @evar, 0; } dispbottom "Select the starting and ending time for the WoE, note the hour is in military time, i.e. 0=12AM, 10=10AM, 22=10PM. Variance is the total amount in seconds to make the time be randomized, ex: setting start to 60 would make the start time either start up to 30 seconds earlier, or start up to 30 seconds later."; L_ModifyTime_Sub: for (set [email protected], 1; [email protected]<3; set [email protected], [email protected]+1) setd("@temp"[email protected]+"$", callfunc("daytostr",1,getd((([email protected]==1)?"@sday":"@eday")))); menu "Start Day [^0066FF"[email protected]$+"^000000]:Start Hour [^0066FF"[email protected]+"^000000]:Start Minute [^0066FF"[email protected]+"^000000]:End Day [^0066FF"[email protected]$+"^000000]:End Hour [^0066FF"[email protected]+"^000000]:End Minute [^0066FF"[email protected]+"^000000]:Start Variance [^0066FF"[email protected]+"^000000]:End Variance [^0066FF"[email protected]+"^000000]",-,"Proceed",L_ModifyFinish,"Back",L_ModifyCastle_Sub; switch(@menu) { case 1: menu "Sunday:Monday:Tuesday:Wednesday:Thursday:Friday:Saturday",-,"Cancel",L_ModifyTime_Sub; set @sday, @menu-1; break; case 2: input @shour; if (@shour>23) set @shour, 0; break; case 3: input @smin; if (@smin>59) set @smin, 0; break; case 4: menu "Sunday:Monday:Tuesday:Wednesday:Thursday:Friday:Saturday",-,"Cancel",L_ModifyTime_Sub; set @eday, @menu-1; break; case 5: input @ehour; if (@ehour>23) set @ehour, 0; break; case 6: input @emin; if (@emin>59) set @emin, 0; break; case 7: input @svar; break; case 8: input @evar; break; } goto L_ModifyTime_Sub; L_ModifyFinish: if (@[email protected]) if (@[email protected]) if (@[email protected]) { dispbottom "Your start time cannot be your end time!"; goto L_ModifyTime_Sub; } set $woe_chatinfo, 0; set @temp1, callfunc("WoE_TickCounter",@sday,@shour,@smin,@svar); set @temp2, callfunc("WoE_TickCounter",@eday,@ehour,@emin,@evar); if (@temp1>@temp2) set @temp2,@temp2+604800; if (@adding) { query_sql("insert into `woe_times` (town,castle,sd,sh,sm,st,sv,ed,eh,em,et,ev,active) values ('"[email protected]_code+"', '"[email protected]_code+"', '"[email protected]+"', '"[email protected]+"', '"[email protected]+"', '"[email protected]+"','"[email protected]+"','"[email protected]+"', '"[email protected]+"', '"[email protected]+"', '"[email protected]+"','"[email protected]+"','0')"); } else { query_sql("update `woe_times` set town='"[email protected]_code+"', castle='"[email protected]_code+"', sd='"[email protected]+"', sh='"[email protected]+"', sm='"[email protected]+"',st='"[email protected]+"',sv='"[email protected]+"',ed='"[email protected]+"',eh='"[email protected]+"',em='"[email protected]+"',et='"[email protected]+"',ev='"[email protected]+"', active='0' where `id` = '"[email protected]_id[@sel_modify]+"'"); } dispbottom "WoE time "+((@adding)?"added!":"modified!"); goto L_ModifyListing; L_ManualWoE: dispbottom "Select the castle(s) to start or stop WoE for."; menu (($woe_cas1_2[1]||$woe_cas1_2[2]||$woe_cas1_2[3]||$woe_cas1_2[4]||$woe_cas1_2[5])?"^339900":"^FF0000")+$woe_towns$[1]+":"+(($woe_cas2_2[1]||$woe_cas2_2[2]||$woe_cas2_2[3]||$woe_cas2_2[4]||$woe_cas2_2[5])?"^339900":"^FF0000")+$woe_towns$[2]+":"+(($woe_cas3_2[1]||$woe_cas3_2[2]||$woe_cas3_2[3]||$woe_cas3_2[4]||$woe_cas3_2[5])?"^339900":"^FF0000")+$woe_towns$[3]+":"+(($woe_cas4_2[1]||$woe_cas4_2[2]||$woe_cas4_2[3]||$woe_cas4_2[4]||$woe_cas4_2[5])?"^339900":"^FF0000")+$woe_towns$[4]+":"+(($woe_cas5_2[1]||$woe_cas5_2[2]||$woe_cas5_2[3]||$woe_cas5_2[4]||$woe_cas5_2[5])?"^339900":"^FF0000")+$woe_towns$[5]+":"+(($woe_cas6_2[1]||$woe_cas6_2[2]||$woe_cas6_2[3]||$woe_cas6_2[4]||$woe_cas6_2[5])?"^339900":"^FF0000")+$woe_towns$[6]+":"+(($woe_cas7_2[1]||$woe_cas7_2[2]||$woe_cas7_2[3]||$woe_cas7_2[4])?"^339900":"^FF0000")+$woe_towns$[7],-,"^339900Enable all",-,"^FF0000Disable all",-,"^000000Back",L_Main; if (@menu==8) { set $woe_manual, 0; callfunc("WoE_Status",1,127,31); set $woe_manual, 1; goto L_ManualWoE; } if (@menu==9) { set $woe_manual, 0; callfunc("WoE_Status",0,127,31); set $woe_manual, 1; goto L_ManualWoE; } set @temp, 64; for (set [email protected], 7; [email protected]>0; set [email protected],[email protected]) { if ([email protected][email protected]) { set @town, @temp; set @town_, [email protected]; } set @temp, @temp/2; } L_ManualCastles: menu ((getd("$woe_cas"[email protected]_+"_2[1]"))?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_+"_1$[1]")+":"+((getd("$woe_cas"[email protected]_+"_2[2]"))?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_+"_1$[2]")+":"+((getd("$woe_cas"[email protected]_+"_2[3]"))?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_+"_1$[3]")+":"+((getd("$woe_cas"[email protected]_+"_2[4]"))?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_+"_1$[4]")+((@set_town!=5)?":"+((getd("$woe_cas"[email protected]_+"_2[5]"))?"^339900":"^FF0000")+getd("$woe_cas"[email protected]_+"_1$[5]"):""),-,"^339900Enable all",-,"^FF0000Disable all",-,"^000000Back",L_ManualWoE; if (@menu==6) { set $woe_manual, 0; callfunc("WoE_Status",1,@town,31); set $woe_manual, 1; goto L_ManualCastles; } if (@menu==7) { set $woe_manual, 0; callfunc("WoE_Status",0,@town,31); set $woe_manual, 1; goto L_ManualCastles; } set @temp, 16; for (set [email protected], 5; [email protected]>0; set [email protected],[email protected]) { if ([email protected][email protected]) { set @cas, @temp; set @cas_,[email protected]; } set @temp, @temp/2; } set $woe_manual, 0; callfunc("WoE_Status",((getd("$woe_cas"[email protected]_+"_2["[email protected]_+"]"))?0:1),@town,@cas); set $woe_manual, 1; goto L_ManualCastles; L_Settings: menu (($woe_mobspawn)?"^339900":"^FF0000")+"Monster Spawns",-,(($woe_timerdisp)?"^339900":"^FF0000")+"Chatroom Timer Display",-,(($woe_tannounce)?"^339900":"^FF0000")+"Announce Treasure Spawns [Plug-in]",-,(($woe_announcebreaker)?"^339900":"^FF0000")+"Announce Emperium Breaker",-,"^000000Back",L_Main; switch(@menu) { case 1: if ($woe_mobspawn) { set $woe_mobspawn, 0; } else { set $woe_mobspawn, 1; } break; case 2: if ($woe_timerdisp) { set $woe_timerdisp, 0; } else { set $woe_timerdisp, 1; set $woe_chatinfo, 0; donpcevent "WoE Information::OnChatInfo"; } break; case 3: if ($woe_tannounce) { set $woe_tannounce, 0; } else { set $woe_tannounce, 1; } break; case 4: if ($woe_announcebreaker) { set $woe_announcebreaker, 0; } else { set $woe_announcebreaker, 1; } break; } goto L_Settings; OnInit: query_sql("CREATE TABLE IF NOT EXISTS `woe_times` ( `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, `town` TINYINT UNSIGNED NOT NULL, `castle` TINYINT UNSIGNED NOT NULL, `sd` TINYINT UNSIGNED NOT NULL, `sh` TINYINT UNSIGNED NOT NULL, `sm` TINYINT UNSIGNED NOT NULL, `st` BIGINT UNSIGNED NOT NULL, `sv` INTEGER UNSIGNED NOT NULL, `ed` TINYINT UNSIGNED NOT NULL, `eh` TINYINT UNSIGNED NOT NULL, `em` TINYINT UNSIGNED NOT NULL, `et` BIGINT UNSIGNED NOT NULL, `ev` INTEGER UNSIGNED NOT NULL, `active` TINYINT UNSIGNED NOT NULL, PRIMARY KEY (`id`) ) ENGINE = MyISAM;"); set $woe_manual, 1; //Variable to know whether WoE was started by atcommand/manually through NPC, or through automatic timer. set $woe_mingmlv, 80; //The minimum GM level able to use the NPC setarray $woe_towns$[1], "Aldebaran", "Geffen", "Payon", "Prontera", "Novice Castles", "Schwartzvalt", "Arunafeltz", "All Castles"; //These are the town names, mostly for announcements setarray $woe_cas1_1$[1], getcastlename("aldeg_cas01"), getcastlename("aldeg_cas02"), getcastlename("aldeg_cas03"), getcastlename("aldeg_cas04"), getcastlename("aldeg_cas05"); //These are the castle names setarray $woe_cas1_2[1], 0, 0, 0, 0, 0; //Aldebaran's agit status setarray $woe_cas1_3$[1], "aldeg_cas01", "aldeg_cas02", "aldeg_cas03", "aldeg_cas04", "aldeg_cas05"; setarray $woe_cas2_1$[1], getcastlename("gefg_cas01"), getcastlename("gefg_cas02"), getcastlename("gefg_cas03"), getcastlename("gefg_cas04"), getcastlename("gefg_cas05"); //These are the castle names setarray $woe_cas2_2[1], 0, 0, 0, 0, 0; //Geffen's agit status setarray $woe_cas2_3$[1], "gefg_cas01", "gefg_cas02", "gefg_cas03", "gefg_cas04", "gefg_cas05"; setarray $woe_cas3_1$[1], getcastlename("payg_cas01"), getcastlename("payg_cas02"), getcastlename("payg_cas03"), getcastlename("payg_cas04"), getcastlename("payg_cas05"); //These are the castle names setarray $woe_cas3_2[1], 0, 0, 0, 0, 0; //Payon's agit status setarray $woe_cas3_3$[1], "payg_cas01", "payg_cas02", "payg_cas03", "payg_cas04", "payg_cas05"; setarray $woe_cas4_1$[1], getcastlename("prtg_cas01"), getcastlename("prtg_cas02"), getcastlename("prtg_cas03"), getcastlename("prtg_cas04"), getcastlename("prtg_cas05"); //These are the castle names setarray $woe_cas4_2[1], 0, 0, 0, 0, 0; //Prontera's agit status setarray $woe_cas4_3$[1], "prtg_cas01", "prtg_cas02", "prtg_cas03", "prtg_cas04", "prtg_cas05"; setarray $woe_cas5_1$[1], "Aldebaran Castle", "Geffen Castle", "Payon Castle", "Prontera Castle", "-"; //These are the castle names setarray $woe_cas5_2[1], 0, 0, 0, 0, 0; //Novice's agit status setarray $woe_cas6_1$[1], getcastlename("schg_cas01"), getcastlename("schg_cas02"), getcastlename("schg_cas03"), getcastlename("schg_cas04"), getcastlename("schg_cas05"); //These are the castle names setarray $woe_cas6_2[1], 0, 0, 0, 0, 0; //Schwartzvalt's agit status setarray $woe_cas6_3$[1], "schg_cas01", "schg_cas02", "schg_cas03", "schg_cas04", "schg_cas05"; setarray $woe_cas7_1$[1], getcastlename("arug_cas01"), getcastlename("arug_cas02"), getcastlename("arug_cas03"), getcastlename("arug_cas04"), getcastlename("arug_cas05"); //These are the castle names setarray $woe_cas7_2[1], 0, 0, 0, 0, 0; //Arunafeltz's agit status setarray $woe_cas7_3$[1], "arug_cas01", "arug_cas02", "arug_cas03", "arug_cas04", "arug_cas05"; agitend; query_sql "update `woe_times` set `active` = '0' where `active` = '1'"; callfunc("WoE_Update"); donpcevent "WoE Information::OnChatInfo"; deletearray [email protected]_pl_playermenu$[0], 128; deletearray [email protected]_pl_player$[0], 128; deletearray [email protected]_pl_gmmenu$[0], 128; deletearray [email protected]_pl_gm$[0], 128; donpcevent "::OnLoadPlugins"; while(1) callfunc("WoE_Init"); end; OnChatInfo: while (1) { delwaitingroom; //Memory vortex restraining bolt, please don't remove it for the sake of humanity. if (!$woe_timerdisp) end; if ([email protected]_e-gettimetick(2) <= 0 || !$woe_chatinfo) { set [email protected], query_sql("select st,et from `woe_times` order by `st` ASC",[email protected]_s,[email protected]_e); set $woe_chatinfo, 1; } if ([email protected]) { if (gettimetick(2)>[email protected]_s) { set [email protected], [email protected]_e-gettimetick(2); set [email protected], [email protected] / 86400; set [email protected], [email protected] % 86400 / 3600; set [email protected], [email protected] % 3600 / 60; set [email protected], [email protected] % 60; waitingroom "Ends: "[email protected]+"d "+(([email protected]<10)?"0":"")[email protected]+":"+(([email protected]<10)?"0":"")[email protected]+(([email protected]&&[email protected]&&[email protected]<60)?":"+(([email protected]<10)?"0":"")[email protected]:""),0; } else { set [email protected], [email protected]_s-gettimetick(2); set [email protected], [email protected] / 86400; set [email protected], [email protected] % 86400 / 3600; set [email protected], [email protected] % 3600 / 60; set [email protected], [email protected] % 60; waitingroom "Next: "[email protected]+"d "+(([email protected]<10)?"0":"")[email protected]+":"+(([email protected]<10)?"0":"")[email protected]+(([email protected]&&[email protected]&&[email protected]<60)?":"+(([email protected]<10)?"0":"")[email protected]:""),0; } if ([email protected]||[email protected]>1) { sleep 60000-(gettime(1)*1000); } else { sleep 1000; } } else { waitingroom "Next: N/A, none set!",0; sleep 60000-(gettime(1)*1000); } } end; OnAgitStart: if ($woe_manual) { callfunc("WoE_Status",1,31,31); } end; OnAgitStart2: if ($woe_manual) { callfunc("WoE_Status",1,96,31); } end; OnAgitEnd: if ($woe_manual) { callfunc("WoE_Status",0,31,31); } end; OnAgitEnd2: if ($woe_manual) { callfunc("WoE_Status",0,96,31); } end; OnWhisperGlobal: if (getgmlevel() < $woe_mingmlv) end; if (@whispervar0$ == "start") { if (@whispervar1$ == "" && @whispervar2$ == "") dispbottom "Invalid syntax, type 'start#help' for assistance."; else if (@whispervar1$ == "help") dispbottom "start#town_code#castle_code - Starts WoE for the specified town(s) and castle(s)."; else callfunc("WoE_Status",1,@whispervar1$,@whispervar2$); } else if (@whispervar0$ == "stop") { if (@whispervar1$ == "" && @whispervar2$ == "") dispbottom "Invalid syntax, type 'stop#help' for assistance."; else if (@whispervar1$ == "help") dispbottom "stop#town_code#castle_code - Stops WoE for the specified town(s) and castle(s)."; else callfunc("WoE_Status",0,@whispervar1$,@whispervar2$); } else if (@whispervar0$ == "talk") goto L_Main; else if (@whispervar0$ == "help") { dispbottom "Welcome to the War of Emperium Setter 3 whisper help system."; dispbottom "The following are commands that you can whisper to the NPC..."; dispbottom " start#town_code#castle_code - Starts WoE for the specified town(s) and castle(s)."; dispbottom " stop#town_code#castle_code - Stops WoE for the specified town(s) and castle(s)."; dispbottom " talk - Opens dialog with the WoE Setter 3 NPC."; dispbottom " help - Displays this help information."; dispbottom "Town code: A bitmask (Add them together to use multiple towns) code to specify what towns the command affects."; dispbottom "Aldebaran=1, Geffen=2, Payon=4, Prontera=8, Novice=16, Schwartvalt=32, Arunafeltz=64, All=127."; dispbottom "Castle code: A bitmask code to specify what castles the command affects."; dispbottom "Castle 1=1, Castle 2=2, Castle 3=4, Castle 4=8, Castle 5=16, All=31."; } else dispbottom "Invalid syntax, type 'help' for assistance."; end; } //Returns the day name from a day # //arg0=Mode, 0=short, 1=full //arg1=Day # function script daytostr { switch(getarg(1)) { case 0: return ((getarg(0))?"Sunday":"Sun"); case 1: return ((getarg(0))?"Monday":"Mon"); case 2: return ((getarg(0))?"Tuesday":"Tue"); case 3: return ((getarg(0))?"Wednesday":"Wed"); case 4: return ((getarg(0))?"Thursday":"Thu"); case 5: return ((getarg(0))?"Friday":"Fri"); case 6: return ((getarg(0))?"Saturday":"Sat"); } return; } //Function to acquire the time difference between now and the arguments in seconds //arg0=Start/end day //arg1=Start/end hour //arg2=Start/end minute //arg3=Random time variance function script WoE_TickCounter { if ((getarg(0)>gettime(4))||(getarg(0)==gettime(4)&&getarg(1)>gettime(3))||(getarg(0)==gettime(4)&&getarg(1)==gettime(3)&&getarg(2)>gettime(2))) { set [email protected], getarg(0)-gettime(4); } else { set [email protected], 7-(gettime(4)-getarg(0)); } set [email protected], getarg(1)-gettime(3); set [email protected], getarg(2)-gettime(2); return gettimetick(2)+([email protected]*86400)+([email protected]*3600)+([email protected]*60)+rand(-getarg(3)/2,getarg(3)/2)-gettime(1); } //Function to update the tick columns of past WoE times so that they may occur again! function script WoE_Update { deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; set [email protected], query_sql("select id,sd,sh,sm,st,sv,ed,eh,em,et,ev from `woe_times` where `et` <= '"+gettimetick(2)+"'",[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected]); set [email protected], 0; for (set [email protected],0; [email protected]<[email protected]; set [email protected],[email protected]+1) { query_sql("update `woe_times` set `st` = '"+callfunc("WoE_TickCounter",[email protected][[email protected]],[email protected][[email protected]],[email protected][[email protected]],[email protected][[email protected]])+"', `et` = '"+callfunc("WoE_TickCounter",[email protected][[email protected]],[email protected][[email protected]],[email protected][[email protected]],[email protected][[email protected]])+"', `active` = '0' where `id` = '"[email protected][[email protected]]+"'"); } return; } //Function to either start WoE or end it, depending on if the current time tick fits a valid time frame found in the SQL table function script WoE_Init { deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; deletearray [email protected][0], 128; set [email protected], query_sql("select town,castle from `woe_times` where `et` <= '"+gettimetick(2)+"' and `active` = '1'",[email protected],[email protected]); if ([email protected]) { set $woe_chatinfo, 0; query_sql("update `woe_times` set `active` = '0' where `et` <= '"+gettimetick(2)+"'"); callfunc("WoE_Update"); } set [email protected], query_sql("select town,castle from `woe_times` where `st` <= '"+gettimetick(2)+"' and `et` > '"+gettimetick(2)+"' and `active` = '0'",[email protected],[email protected]); if ([email protected]) query_sql("update `woe_times` set `active` = '1' where `st` <= '"+gettimetick(2)+"' and `et` > '"+gettimetick(2)+"'"); set $woe_manual, 0; for (set [email protected], 0; [email protected]<[email protected]; set [email protected],[email protected]+1 ) { //WOE END STUFF callfunc("WoE_Status",0,[email protected][[email protected]],[email protected][[email protected]]); } for (set [email protected], 0; [email protected]<[email protected]; set [email protected],[email protected]+1 ) { //WOE START STUFF callfunc("WoE_Status",1,[email protected][[email protected]],[email protected][[email protected]]); } set $woe_manual, 1; sleep 60000-(1000*gettime(1)); return; } //The actual function that starts/stops WoE, called by other NPCs/Functions //arg0=Stop(0) or start(1)? //arg1=Town(s) bitmask, 127=All //arg2=Castle(s) bitmask, 31=All function script WoE_Status { set [email protected], getarg(1); set [email protected], 64; for (set [email protected]_, 7; [email protected]_>0; set [email protected]_,[email protected]_-1) { if ([email protected]>[email protected]) { if ([email protected]_>5) { if (!agitcheck2()&&getarg(0)) { agitstart2; } } else { if (!agitcheck()&&getarg(0)) { agitstart; } } set [email protected]$, ""; set [email protected], getarg(2); set [email protected], 16; for (set [email protected], 5; [email protected]>0; set [email protected],[email protected]) { if ([email protected]>[email protected]) { if (getarg(0)) { if ([email protected]_!=6&&[email protected]_!=7) { if([email protected]!=16) donpcevent "Agit#"+getd("$woe_cas"[email protected]_+"_3$["[email protected]+"]")+"::OnAgitStart_"; } else if ([email protected]_==7) { donpcevent "Manager#aru0"[email protected]+"_02::OnAgitStart2_"; } else { donpcevent "Manager#sch0"[email protected]+"_02::OnAgitStart2_"; } } else { if ([email protected]_!=6&&[email protected]_!=7) { if ([email protected]!=16) donpcevent "Agit#"+getd("$woe_cas"[email protected]_+"_3$["[email protected]+"]")+"::OnAgitEnd_"; } else if ([email protected]_==7) {donpcevent "Manager#aru0"[email protected]+"_02::OnAgitEnd2_"; } else { donpcevent "Manager#sch0"[email protected]+"_02::OnAgitEnd2_"; } } setd "$woe_cas"[email protected]_+"_2["[email protected]+"]", getarg(0); set [email protected]$, [email protected]$+getd("$woe_cas"[email protected]_+"_1$["[email protected]+"]")+(([email protected]>[email protected])?", ":" "); set [email protected], [email protected]@ccurrent; } set [email protected], [email protected]/2; } if (getarg(1)!=127&&[email protected]!=16) announce "WoE has "+((getarg(0))?"begun":"ended")+" for "+$woe_towns$[[email protected]_]+" ( Castle(s): "+((getarg(2)==31)?"All":[email protected]$)+" )!",bc_all|bc_yellow; set [email protected], [email protected]@tcurrent; } set [email protected],[email protected]/2; } if (getarg(1)==127) { set [email protected]$, ""; set [email protected], getarg(2); set [email protected], 16; for (set [email protected], 5; [email protected]>0; set [email protected],[email protected]) { if ([email protected]>[email protected]) set [email protected]$, [email protected][email protected]+(([email protected]>[email protected])?", ":" "); set [email protected], [email protected]@ccurrent; set [email protected], [email protected]/2; } announce "WoE has "+((getarg(0))?"begun":"ended")+" for All Towns ( Castle(s): "+((getarg(2)==31)?"All":[email protected]$)+" )!",bc_all|bc_yellow; } if (!getarg(0)) { set [email protected], 0; set [email protected], 0; for (set [email protected]_, 7; [email protected]_>0; set [email protected]_,[email protected]_-1) { for (set [email protected], 5; [email protected]>0; set [email protected], [email protected]) { if (getd("$woe_cas"[email protected]_+"_2["[email protected]+"]")==1) setd("[email protected]"+(([email protected]_>5)?"2":"1"),1); } } if ([email protected]&&agitcheck()) agitend; if ([email protected]&&agitcheck2()) agitend2; } return; } this script has a lot of errors. can someone fix me for this i tried to fix it by myself but its not good enough. thanks
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.