//**********************************************************************************
// ____ _ _ _ ____
//| _ \ ___ ___ ____ | | ___ ____ ___ ___ __ ___ _ _ | |_| |/ __ |
//| |__// _ \ / _ \ | _ \| | / _ \ | _ \ / _ \ / _| / _)/ _ \ | \| ||___ |\__ |
//| | | __/ ||_|| | |__/| || __/ | |__/| __/ | | _\ \ ||_|| | \\ | | | | |
//|_|___\___|_\___/_| |___|_|_\___|_| |____\___|_|_|_(___/ \___/_|_|\_|____|_|___|_|
//------------------|_|-------------|_|---------------------------------------------
//**********************************************************************************
//**********************************************************************************
//===== rAthena Script =============================================================
//= King Of Emperium Hill
//===== By: ========================================================================
//= Peopleperson49 (Eddie)
//===== Start Date: ================================================================
//= 27AUG2012
//===== Current Version: ===========================================================
//= 5.0
//===== Compatible With: ===========================================================
//= rAthena SVN
//===== Description: ===============================================================
//= My version of King Of Emperium Hill. It was make for donkeyg on rAthena.org.
//= I did not use the other versions as a base. You can set it to give both a
//= zeny and item prizes to the guild leader through the Emperium Assistant.
//= They can collect once after each time the KoE ends.
//===== Version Control: ===========================================================
//= 1.0 First Version.
//= 1.1 Minor Bug Fixes.
//= 1.2 Small Optomizations. Added Assitant to give rewards daily.
//= 1.3 Only guild master man collect rewards.
//= 1.4 Rewards changed from daily to only be collected once after KoE ends.
//= 1.5 Changed the days and time that KoE happens.
//= 1.6 Removed all KoE functions from script and based just on start and stop time.
//= 1.7 Added warp portals from prontera to any character that is in a guild.
//= 1.8 Added GM feature to allow adjustment of zeny and item prizes in game.
//= 1.9 Added restriction to prevent changing prizes while KoE is running.
//= 2.0 Added KoE prizes to OnInit to reset prizes each time scripts are reloaded.
//= 2.1 Added $KoEPrizeTracker to the OnInit however I suggest that you keep it
//= commented out unless you want to allow prizes to be collected again
//= everytime you reload scripts. I mainly added it for easy testing.
//= 2.2 Moved flags to a better location that was not hanging over the edge of the
//= steps.
//= 2.3 Commented out the $KoEPrizeTracker in the OnInit section.
//= 2.4 Moved location of emperium from 49,49 to 50,50 so that is is centered in the
//= block.
//= 2.5 Changed the mapannounce when the emperium is broken.
//= 2.6 Changed the OnClock gettime(4) to use&&instead of || . Now the check
//= actually works!
//= 2.7 Added gettime(3) and KoEActualStart to the OnInit incase scripts are
//= reloaded during the time that KoE is set to be running.
//= 2.8 Added $KoEStatus to ending OnClock to prevent it from running ending portion
//= of the script when KoE was not already going.
//= 2.9 Adding missing mapflag loadevent.
//= 3.0 Changed item prize to allow 5 seperate prizes to be given.
//= 3.1 Added the option for monster or guildmonster function using the variable
//= $EmpSpawnMode to control which mode to use.
//= 3.2 Removed the next; after case 255: that was causing error.
//= 3.3 Removed $EmpSpawnMode because it still detected the guildmonster command
//= even if it was not being used.
//= 3.4 Removed the guildmonster command completely since it just confused people
//= who did not have command.
//= 3.5 Added ability to set KoE time in game.
//= 3.6 Expanded the ability to set KoE time in game by allowing 4 different times.
//= 3.7 Removed zeny/item prize setting from script and made completely controlled
//= in game by GM.
//= 3.8 Added alot of next; where they should have been.
//= 3.9 Added set @KoEAddMenu$,0; to prevent it from displaying menu itmes more than
//= once.
//= 4.0 Added .@RandomFinalize to allow finalize number to change each time.
//= 4.1 Fixed error that prevented KoE from ending at the set time.
//= 4.2 Added option to switch between PvP and GvG.
//= 4.3 Fixed incorrect variable. Changed GvGPvP to $GvGPvP.
//= 4.4 Added function to clear zeny and item prizes when you Clear All KoE Events.
//= 4.5 Fixed finalize zeny prize to allow you to finalize prize.
//= 4.6 Added OnWhisperGlobal to script to all starting and stopping KoE manually
//= using commands. Uses NPC:KingOfEmperium<TAB>StartKoE and NPC:KingOfEmperium
//= <TAB>EndKoE.
//= 4.7 Modified scripts to show the guild emblem. I should have done this a long
//= time ago, but it worked fine without it and I got lazy. Thanks to donkeyg on
//= rAthena.org else for the push.
//= 4.8 Added checkweight to script for collecting rewards.
//= 4.9 Replaced whisper system with bindatcmd function.
//= 5.0 Modified KoE event to allow up to 7 events to be set.
//===== Additional Comments: =======================================================
//= Need to remove the random '0' before the first event slot in the Add New KoE
//= Event section.
//==================================================================================
turbo_room,99,115,5 script Reward KOE#KoE 51,{
mes "[Reward]";
if ( getvariableofnpc( .koe_start, "KingOfEmperium" ) ) {
mes "King of Emperium Hill event is currently running";
close;
}
if ( getcharid(2) == $KOEGUILD ) {
set .@size, getarraysize(.koe_prize);
for ( set .@i, 0; .@i < .@size; set .@i, .@i +1 ) {
if ( .koe_prize[.@i] == getcharid(0) ) {
mes "You already received the rewards";
close;
}
}
mes "Congratulation on becoming the winner of ^FF0000King of Emperium Hill^000000";
getitem 30070, 25; // configure prize here
getitem 7828, 500; // configure prize here
set .koe_prize[ getarraysize(.koe_prize) ], getcharid(0);
}
else {
mes "Your guild is not the winner of King of Emperium Hill";
}
close;
Onresetreward:
deletearray .koe_prize;
end;
}
- script KingOfEmperium -1,{
end;
OnInit:
disablenpc "Reward KOE#KoE";
bindatcmd("koestart",strnpcinfo(0)+"::OnKoEStart");
bindatcmd("koeend",strnpcinfo(0)+"::OnKoEEnd");
set $GvGPvP,0; //Set to 0 for GvG and 1 for PvP
set $KoEStatus,0;
OnMinute00:
set .KoE,0;
StartLoop:
if(gettime(4)==$KoEEndDay[.KoE]&&gettime(3)==$KoEEndTime[.KoE]) { goto KoEActualEnd; end; }
if(gettime(4)==$KoEStartDay[.KoE]&&gettime(3)>=$KoEStartTime[.KoE]&&(gettime(3)<$KoEEndTime[.KoE] || $KoEStartDay[.KoE]!=$KoEEndDay[.KoE])) { goto KoEActualStart; end; }
set .KoE,.KoE+1;
if(.KoE>7) { goto StartLoopEnd; }
goto StartLoop;
end;
OnClock1600:
OnClock2300:
//OnClock2100:
KoEActualStart:
if($KoEStatus==1) { end; }
set $KoEStatus,1;
disablenpc "Reward KOE#KoE";
set $KoEPrizeTracker,1;
if($KOEGUILD!=0) { Announce "The King of Emperium Hill has begun! The King Of Emperium Hill is the ["+GetGuildName($KOEGUILD)+"] guild.",bc_all|bc_WoE; } else { Announce "King Of Emperium Hill has began! Which guild will prove their worth?",bc_all|bc_WoE; }
if(getmapusers("guild_vs1")>0) { MapRespawnGuildID "guild_vs1",$KOEGUILD,6; }
if($GvGPvP==0) { gvgon "guild_vs1"; } else { pvpon "guild_vs1"; }
monster "guild_vs1",50,50,"EMPERIUM",1288,1,"KingOfEmperium::OnEmperiumBreak";
end;
StartLoopEnd:
set .KoE,0;
EndLoop:
if((gettime(4)==$KoEEndDay[.KoE])&&(gettime(3)==$KoEEndTime[.KoE])) { goto KoEActualEnd; end; }
if($KoEEndDay[.KoE]==0&&$KoEStartTime[.KoE]==0&&$KoEEndTime[.KoE]==0) { end; }
set .KoE,.KoE+1;
if(.KoE>7) { end; }
goto EndLoop;
end;
OnClock1700:
OnClock2358:
//OnClock2120:
KoEActualEnd:
if($KoEStatus==0) { end; }
set $KoEStatus,0;
enablenpc "Reward KOE#KoE";
if($GvGPvP==0) { gvgoff "guild_vs1"; } else { pvpoff "guild_vs1"; }
if(getmapusers("guild_vs1")>0) { MapRespawnGuildID "guild_vs1",$KOEGUILD,7; }
killmonsterall "guild_vs1",0;
set .@name$,GetGuildMaster($KOEGUILD);
if($KOEGUILD!=0) { Announce "The King of Emperium Hill has ended! The King Of Emperium Hill is the ["+GetGuildName($KOEGUILD)+"] guild.",bc_all|bc_WoE; } else { Announce "The King of Emperium Hill has ended! No guild has proven themselves King Of Emperium Hill!",bc_all|bc_WoE; }
end;
OnEmperiumBreak:
if(getskilllv(10000)!=1) { announce "Only a guild with the Guild Approval skill can kill the Emperium!",bc_self; monster "guild_vs1",50,50,"EMPERIUM",1288,1,"KingOfEmperium::OnEmperiumBreak"; end; }
killmonsterall "guild_vs1",0;
set $KOEGUILD,getcharid(2);
donpcevent "::OnRevKoE";
mapannounce "guild_vs1",""+strcharinfo(0)+" has broken the emperium for the ["+GetGuildName($KOEGUILD)+"] guild.",bc_map|bc_WoE,"0x00CCFF",FW_NORMAL,12;
sleep 2000;
if(getmapusers("guild_vs1")>0) { MapRespawnGuildID "guild_vs1",$KOEGUILD,6; }
announce "The ["+getguildName($KOEGUILD)+"] guild has became the King Of Emperium Hill!",bc_all|bc_WoE;
sleep 5000;
if($KoEStatus==1) { monster "guild_vs1",50,50,"EMPERIUM",1288,1,"KingOfEmperium::OnEmperiumBreak"; }
end;
OnKoEStart:
if(getgmlevel()<99) { end; }
if($KoEStatus==1) { dispbottom "KoE is already running."; end; }
goto KoEActualStart;
end;
OnKoEEnd:
if(getgmlevel()<99) { end; }
if($KoEStatus==0) { dispbottom "KoE is currently not running."; end; }
goto KoEActualEnd;
end;
OnClock1701:
OnClock2359:
disablenpc "Reward KOE#KoE";
end;
}
//==================================================================================
//--------|King Of Emperium Hill Guild Protection|----------------------------------
//==================================================================================
- script KoEGuildProtection -1,{
OnInit:
end;
OnPCLoadMapEvent:
if(getgmlevel()<20&&strcharinfo(3)=="guild_vs1"&&getcharid(2)==0) { announce "You must be in a guild to enter Emperium Hill!",bc_self; warp "SavePoint",0,0; end; }
end;
}
//==================================================================================
//--------|KoE Flag Script|---------------------------------------------------------
//==================================================================================
- script King of Emperium Hill#1::koe_flag 722,{
set .@GID, $KOEGUILD;
if (.@GID == 0) end;
mes "[Emperium Hill]";
mes " ";
mes " ";
mes " ";
mes " ";
if($KOEGUILD!=0) { mes "The King Of Emperium Hill is the ["+GetGuildName($KOEGUILD)+"] guild."; } else { mes "Only the strongest warriors should may over take Emperium Hill!"; }
close;
OnRevKoE:
FlagEmblem $KOEGUILD;
end;
OnInit:
Flagemblem $KOEGUILD;
end;
}
guild_vs1,54,59,0 duplicate(koe_flag) Emperium Hill#EH1 722
guild_vs1,45,59,0 duplicate(koe_flag) Emperium Hill#EH2 722
guild_vs1,40,54,2 duplicate(koe_flag) Emperium Hill#EH3 722
guild_vs1,40,45,2 duplicate(koe_flag) Emperium Hill#EH4 722
guild_vs1,45,40,4 duplicate(koe_flag) Emperium Hill#EH5 722
guild_vs1,54,40,4 duplicate(koe_flag) Emperium Hill#EH6 722
guild_vs1,59,45,6 duplicate(koe_flag) Emperium Hill#EH7 722
guild_vs1,59,54,6 duplicate(koe_flag) Emperium Hill#EH8 722
turbo_room,106,74,3 duplicate(koe_flag) Emperium Hill#pront 722
//==================================================================================
//--------|KoE Waper Script|--------------------------------------------------------
//==================================================================================
- script KoEWarper 723,-1,-1,{
mes "Portal Emperium Hill.";
mes " ";
mes " ";
mes " ";
mes "Only the strongest warriors should pass through the portal to Emperium Hill";
next;
switch(prompt("Procede to the Emperium Hill:Nevermind")) {
case 1:
next;
if(getgmlevel()<20&&getcharid(2)==0) { mes "[Notice:]"; mes " "; mes "You must be in a guild to enter Emperium Hill!"; close; }
warp "guild_vs1",0,0;
close;
case 2:
close;
case 255:
end;
}
}
prontera,164,208,0 duplicate(KoEWarper) Emperium Hill#1 723
turbo_room,90,119,0 duplicate(KoEWarper) Emperium Hill#2 723
prontera,164,204,0 duplicate(KoEWarper) Emperium Hill#3 723
prontera,164,203,0 duplicate(KoEWarper) Emperium Hill#4 723
guild_vs1,8,50,5 warp KoEWarp#WP1 2,2,turbo_room,100,103
guild_vs1,50,91,5 warp KoEWarp#WP2 2,2,turbo_room,100,103
guild_vs1,91,50,5 warp KoEWarp#WP3 2,2,turbo_room,100,103
guild_vs1,50,8,5 warp KoEWarp#WP4 2,2,turbo_room,100,103
//==================================================================================
//--------|Map Flags|---------------------------------------------------------------
//==================================================================================
guild_vs1 mapflag nobranch
guild_vs1 mapflag nomemo
guild_vs1 mapflag nopenalty
guild_vs1 mapflag noreturn
guild_vs1 mapflag nosave SavePoint
guild_vs1 mapflag noteleport
guild_vs1 mapflag nowarp
guild_vs1 mapflag nowarpto
guild_vs1 mapflag loadevent
Help! I just want to remove the reward NPC and replace it with Automatic reward for all the Guild Members. Thank You for the help!
Question
cross10hunter
Help! I just want to remove the reward NPC and replace it with Automatic reward for all the Guild Members. Thank You for the help!
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.