summaryrefslogtreecommitdiff
path: root/npc/guild/gldfunc_flag.txt
blob: fb7050c9c1b2167ca5a4e77857ca8f77270d9914 (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
62
63
64
65
//===== 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.4
//===== 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) 
//=   arg(5): Display Flag Dialog (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]
//= v1.4: By default town flags are set to no longer show text. [L0ne_W0lf]
//============================================================

function	script	F_Flags	{

	if (getarg(5) == 0) return;

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

	mes "[ Edict of the Divine Rune Midgard Kingdom of ]";
	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 ]";
	mes " ";
	mes "1. Following the ordinance of the";
	mes "Divine Rune Midgard Kingdom,";
	mes "we approve that this place is in";
	mes "private possession of ^ff0000" + GetGuildName(@GID) + "^000000 Guild.";
	mes " ";
	mes "2. The guild Master of ^ff0000"+ GetGuildName(@GID) + "^000000 Guild is";
	mes "^0000FF" + GetGuildMaster(@GID) + "^000000";
	mes "If there is anyone who objects to this,";
	mes " prove your strength and honor with a steel blade in your hand.";
	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;
}