summaryrefslogtreecommitdiff
path: root/npc/guild/gldfunc_flag.txt
blob: 356f94983125b2f7a81eb406afe46debc05e3ece (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
//===== eAthena Script =======================================
//= War of Emperium Guild Flags Function
//===== By: ==================================================
//= jAthena - kalen (1.0)
//= 1.1 by Akaru, ho|yAnge|X, and Valaris
//===== Current Version: =====================================
//= 1.3a
//===== Compatible With: =====================================
//= eAthena 0.1+; RO Episode 4+
//===== Description: =========================================
//= Flags display messages stating whether or not a guild castle has been captured.
//= Allows the guild members to return to a captured castle.
//======================================
//= Break down of arguments used in the function:
//=   arg(0): name of City.
//=   arg(1): name of guild castle.
//=   arg(2): x1 coordinate for warp
//=   arg(3): y1 coordinate for warp
//=   arg(4): Teleportable (0/1) 
//===== Additional Comments: =================================
//= v1.2: All Guild flags scripts use this function. [kobra_k88]
//= v1.3: Can now only flag in from outside the castle [Kayla]
//= v1.3a: Implemented k3dt's exploit fix [Vicious]
//============================================================

function	script	F_Flags	{

	set @GID, GetCastleData(getarg(1),1);
	if (@GID != 0) goto L_Startg;

	mes "[ Edict of the Divine Rune Midgard Kingdom of " + getarg(0) + " ]";
	mes " ";
	mes "1. Honoring the ordinance of the Divine Rune Midgard Kingdom of " + getarg(0) + ", this guild base has not been taken by any guild yet";
	mes " ";
	mes "2. In order to take this guild base, you must defeat all the guardians that are protecting the guild base and eliminate the Emperium.";
	return;
L_Startg:
	if ((getcharid(2) == @GID) && (getarg(4) == 1)) goto L_Startg2;
	mes "[ Edict of the Divine Rune Midgard Kingdom of "+ getarg(0) +" ]";
	mes " ";
	mes "1. Honoring the ordinance of the";
	mes "Divine Rune Midgard Kingdom of ";
	mes getarg(0) +", we approve that this";
	mes "base is in the private possession";
	mes "of the ^ff0000" + GetGuildName(@GID) + "^000000 guild.";
	mes " ";
	mes "2. The guild master of the";
	mes "^ff0000"+ GetGuildName(@GID) + "^000000 guild, is ^0000FF" + GetGuildMaster(@GID) + "^000000.";
	mes "If anyone objects to that, raise your sword to honor yourself.";
	return;
L_Startg2:
	mes "[ Ringing Voice ]";
	mes "Brave one... would you return to your honorable be?";
	next;
	menu "Return.",M_Enter,"Cancel.",-;
	return;

	M_Enter:
		if (getcharid(2) == GetCastleData(getarg(1),1)) warp getarg(1),getarg(2),getarg(3);
		return;
}