Jump to content
  • 0

Im using Annie KOE Script but need some modifications


Question

Posted

the scripts going well but if it can be changed to this, it will be more nicer :

 

- reward koe given to all guild players that online either using mail OR recall back all player (player that just die a few seconds before koe finish)

 

-after koe finish,other guild must be removed from the map and all winner guildmember will recalled (they can still fight after koe finish -.-)

 

im using this script : 
 

- script KoE -1,{
OnInit:
disablenpc "The King#KoE";
disablenpc "Exit#KoE";
end;
OnWhisperGlobal:
if ( getgmlevel() < 99 ) end;
else if ( compare ( @whispervar0$, "on" ) ) goto L_start;
else if ( compare ( @whispervar0$, "off" ) ) goto L_end;
else end;
 
L_end:
OnClock2200:
OnClock2240:
if(gettime(4) == 1 || gettime(4) == 3) end;
announce "The King of Emperium Hill is over!", 0;
set .koe_start, 0;
enablenpc "Exit#KoE";
disablenpc "The King#KoE";
killmonsterall "guild_vs1";
end;

L_start:
OnClock2130:
OnClock2210:
if(gettime(4) == 1 || gettime(4) == 3) end;
announce "The King of Emperium Hill has begun!", 0;
set .koe_start, 1;
enablenpc "The King#KoE";
disablenpc "Exit#KoE";
set $koegid, 0;
donpcevent "::OnRevKoE";
maprespawnguildid "guild_vs1", $koegid, 6;
monster "guild_vs1",49,49,"EMPERIUM",1288,1,"KoE::OnEmpDead";
end;

OnEmpDead:
set $koegid, getcharid(2);
announce "The current King of Emperium Hill is the [" + strcharinfo(2) + "] guild.", 0;
donpcevent "::OnRevKoE";
maprespawnguildid "guild_vs1", $koegid, 6;
sleep 500;
if ( .koe_start )
  monster "guild_vs1",49,49,"EMPERIUM",1288,1,"KoE::OnEmpDead";
end;
}// KoE Entrance
prontera,155,185,4 script The King#KoE 966,{
	mes "[The King]";
if ( getcharid(2) == 0 ) {
  mes "You must have a guild to participate in the ^FF0000King of Emperium Hill Tournament^000000.";
  close;
}
	mes "Hello.";
	mes "Would you like to participate in the ^FF0000King of Emperium Hill Tournament^000000?";
if ( select ( "Yes", "No" ) == 2 ) close;
	switch( rand(1,4) ){
		case 1: warp "guild_vs1", 50, 88; end;
		case 2: warp "guild_vs1", 88, 50; end;
		case 3: warp "guild_vs1", 50, 11; end;
		case 4: warp "guild_vs1", 11, 50; end;
}
}
// KoE Exit
guild_vs1,49,56,5 script Exit#KoE 51,{
mes "[Exit]";
mes "See ya.";
query_sql "SELECT `account_id` and FROM `char` WHERE `last_map`='guild_vs1' AND `online`=1",.@aid;

for ( set .@i, 0; .@i < getarraysize(.@aid); set .@i, .@i + 1 )
{
if ( getcharid(2) == $koegid )
{
attachrid(.@aid);
getitem 12704, 100;
getitem 14523, 100;
}

if ( .@i % 10 == 0 ) sleep 100;
}
next;
warp "Save",0,0;
close;
}// Flags
guild_vs1,49,38,4 script King of Emperium Hill#1::koe_flag 722,{
set .@gid, $koegid;
if ( .@gid == 0 ) end;
mes "[King of Emperium Hill]";
mes "The Current King of Emperium Hill is the ["+ getguildname(.@gid) +"] guild.";
close;
OnRevKoE:
flagemblem $koegid;
end;
}
guild_vs1,61,49,6 duplicate(koe_flag) King of Emperium Hill#2 722
guild_vs1,38,49,2 duplicate(koe_flag) King of Emperium Hill#3 722
guild_vs1,49,61,0 duplicate(koe_flag) King of Emperium Hill#4 722
prontera,164,152,4 duplicate(koe_flag) King of Emperium Hill#5 722
guild_vs1 mapflag gvg
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

 

 

8 answers to this question

Recommended Posts

Posted

Dude they can abuse the prize giver?

hmm ... now I read this script seriously ... yeah it miss a guildlock mapflag ...

they can put a lot of characters in, and invite/kick guild members inside the map ...

-after koe finish,other guild must be removed from the map and all winner guildmember will recalled (they can still fight after koe finish -.-)

... yeah =/ should be gvgon/gvgoff script command, not by a mapflag

ok I rewrite this script a little

koe_0.2.txt

koe_0.2.patch

Posted

hurmmmmmmm

i tried this from capuche but didnt work :( 

// KoE Exit
guild_vs1,49,56,5	script	Exit#KoE	51,{
	mes "[Exit]";
	mes "See ya.";
	next;
	if ( getcharid(2) == $koegid && getcharid(2) ) {
		.@size_guild = query_sql( "SELECT `account_id`, `char_id` FROM `guild_member` WHERE `guild_id` = '"+ getcharid(2) +"'", .@account_id, .@char_id );
		for( .@i = 0; .@i < .@size_guild; .@i++ )
			if( isloggedin( .@account_id[.@i], .@char_id[.@i] ) )
				getitem 7227, 1; // configure prize here
		warpguild "SavePointAll",0,0,getcharid(2);
	}
	warp "Save",0,0;
	close;
}

Posted

1st reason

http://www.eathena.ws/board/index.php?s=&showtopic=147492&view=findpost&p=960352

Q : after I @reloadscript, the emblem gone !

A : @reloadscript doesn't trigger OnAgitInit: label

so the only way to counter this is to use OnInit: label

just put OnInit: above OnRevKoE: should've fix that

2nd reason

nobody uses @reloadscript in a live server ... I'm not going to put that

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...