Browse Source

Updated Valkirye, Global_Functions, Turtle Island Quest vars

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12463 54d463be-8e91-2dee-dedb-b68131a5f0ec
Lupus 17 năm trước cách đây
mục cha
commit
c70703e473

+ 5 - 0
doc/quest_variables.txt

@@ -104,6 +104,11 @@ Info:		Reward: 1 yggdrasil leaf.
 How to set: 	set MISC_QUEST,MISC_QUEST | 32768;
 How to check: 	if(MISC_QUEST & 32768){}
 
+Quest: 		Access to the Turtle Island
+Info:		Reward: ~1 OCA, OVB, GB,  .
+How to set: 	set MISC_QUEST,MISC_QUEST | 65536;
+How to check: 	if(MISC_QUEST & 65536){}
+
 --------------------------------------------------------------
 Variable: MISC_QUEST2
 

+ 4 - 0
npc/Changelog.txt

@@ -1,5 +1,9 @@
 Date		Added
 ======
+2008/04/03
+	* Fixed and removed unused variables from valkyrie.txt [Lupus]
+	- Now Turtle Island Quest uses MISC_QUEST & 65536 and clears TURTLE var
+	- Added more vars to ClearGrabage function: Global_Functions.txt
 2008/04/01
 	* Fixed Bugs/Typos in quests_louyang.txt [Paradox924X]
 2008/03/27

+ 4 - 4
npc/jobs/valkyrie.txt

@@ -5,7 +5,7 @@
 //= finished, optimized and tested by Lupus
 //= L0ne_W0lf
 //===== Current Version: ===================================== 
-//= 2.9a
+//= 2.9b
 //===== Compatible With: ===================================== 
 //= eAthena SVN
 //===== Description: ========================================= 
@@ -35,7 +35,7 @@
 //= 2.7b Removed function "F_BlockHigh" as it's no longer used. [L0ne_W0lf]
 //= 2.8 Corrected NPC names to fall within proper restrictions. [L0ne_W0lf]
 //= 2.9 Corrected Valkyrie case spicifying where to warp after rebirthing. [L0ne_W0lf]
-//= 2.9 Fixed Verdandi typo [Lupus]
+//= 2.9b Fixed Verdandi typo, fixed resetting vars [Lupus]
 //============================================================ 
 
 valkyrie,48,86,4	script	Valkyrie#	811,{
@@ -138,7 +138,7 @@ valkyrie,48,86,4	script	Valkyrie#	811,{
 			mes "[Valkyrie]";
 			mes "One...";
 			mes "Two......";
-			callfunc("F_SaveQuestSkills");
+			//callfunc("F_SaveQuestSkills"); //now not used
 			next;
 			mes "[Valkyrie]";
 			mes "One...";
@@ -149,7 +149,7 @@ valkyrie,48,86,4	script	Valkyrie#	811,{
 			if(ADVJOB == Job_Paladin2) set ADVJOB,Job_Paladin;
 			jobchange Job_Novice_High;
 			resetlvl(1);
-			set RES_SKILL,0;
+			set MISC_QUEST,MISC_QUEST ^ 1024; <-reset Skill Reset Event
 			skill 142,1,0;
 			skill 143,1,0;
 			next;

+ 12 - 83
npc/other/Global_Functions.txt

@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //= Lupus, kobra_k88
 //===== Current Version: ===================================== 
-//= 2.11
+//= 2.12
 //===== Compatible With: ===================================== 
 //= eAthena 1.0
 //===== Description: ========================================= 
@@ -34,6 +34,7 @@
 //= 2.10 Added F_CheckMaxCount to check count of carrid items. [L0ne_w0lf]
 //= 2.10a Removed function F_CheckMaxCount. Not needed. [L0ne_W0lf]
 //= 2.11 Updated function Job_Change to jobchange based on Upper value. [Paradox924X]
+//= 2.12 Added more unused vars to F_ClearGarbage [Lupus]
 //============================================================ 
 
 
@@ -83,11 +84,16 @@ function	script	F_ClearJobVar	{
 
 function	script	F_ClearGarbage	{
 	// Clear outdated global VARS
-	//Shinkskas Quest garbage
-	if(Shinokas_Quest > 7){
-		set ein_scientist,0;
-		set ein_stuff,0;
-	}
+	//Clear TURTLE var if the Turtle Islans Quest is already done
+		if(TURTLE==20) set MISC_QUEST,MISC_QUEST | 65536;
+		if(MISC_QUEST & 65536) set TURTLE,0; //now clear the var if the quest is over
+	//Clear previously saved Quest Skills (now it isn't used)
+		set ADV_QSK,0;
+		set ADV_QSK2,0;
+	//Old Seset Skill Event used to use RES_SKILL var
+		set RES_SKILL,0;
+	//Here you put outdated variables from your outdated EVENTS
+	//e.g. Is XMAS done? Add the EVENT var clearing code here.
 	return;
 }
 
@@ -105,83 +111,6 @@ function	script	Job_Change	{
 }
 
 
-//////////////////////////////////////////////////////////////////////////////////
-// FOT BACKWISE COMPATIBILITY: Functions used to check a players job class
-// HOW TO USE:
-// i.e. We need all holy classes but monks
-// if ( callfunc("Is_Holy_Class") && callfunc("Is_Monk")==0 ) goto L_Start;
-//////////////////////////////////////////////////////////////////////////////////
-
-//////////////////////////////////////////////////////////////////////////////////
-// returns 1 if the player is either Aco,Monk,Priest,Aco High,High Priest,
-// Champion, 0 otherwise
-//////////////////////////////////////////////////////////////////////////////////
-
-function	script	Is_Holy_Class	{
-	return ( BaseJob==Job_Acolyte || BaseJob==Job_Priest || BaseJob==Job_Monk );
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////
-// returns 1 if the player is either Archer,Hunter,Bard,Dancer,Archer High,Sniper,
-// Clown,Gypsy, 0 otherwise
-//////////////////////////////////////////////////////////////////////////////////
-
-function	script	Is_Bow_Class	{
-	return ( BaseJob==Job_Archer || BaseJob==Job_Hunter || BaseJob==Job_Bard || BaseJob==Job_Dancer );
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////
-// returns 1 if the player is either Mage,Wizard,Sage,Mage High,High Wizard,
-// Professor, 0 otherwise
-//////////////////////////////////////////////////////////////////////////////////
-
-function	script	Is_Magic_Class	{
-	return ( BaseJob==Job_Mage || BaseJob==Job_Wizard || BaseJob==Job_Sage );
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////
-// returns 1 if the player is either Merc,Blacksmith,Alchemist,Merc High,
-// Whitesmith,Creator, 0 otherwise
-//////////////////////////////////////////////////////////////////////////////////
-
-function	script	Is_Merc_Class	{
-	return ( BaseJob==Job_Merchant || BaseJob==Job_Blacksmith || BaseJob==Job_Alchemist );
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////
-// returns 1 if the player is either Thief,Assassin,Rogue,Thief High, Assassin Cross
-// Stalker, 0 otherwise
-//////////////////////////////////////////////////////////////////////////////////
-
-function	script	Is_Thief_Class	{
-	return ( BaseJob==Job_Thief || BaseJob==Job_Assassin || BaseJob==Job_Rogue );
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////
-// returns 1 if the player is either Swordy,Knight,Crusader,Swordy High,
-// Lord Knight,Paladin, 0 otherwise
-//////////////////////////////////////////////////////////////////////////////////
-
-function	script	Is_Sword_Class	{
-	return ( BaseJob==Job_Swordman || BaseJob==Job_Knight || BaseJob==Job_Knight2 || BaseJob==Job_Crusader || BaseJob==Job_Crusader2 );
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////
-// returns 1 if the player is either Taekwon, Star Gladiator,Soul Linker, 0 otherwise
-// these classes can't be adopted nor reborn ()
-//////////////////////////////////////////////////////////////////////////////////
-
-function	script	Is_Taekwon_Class	{
-	return ( Class==Job_Taekwon || Class==Job_Star_Gladiator || Class==Job_Star_Gladiator2 || Class==Job_Soul_Linker );
-}
-
-
 //////////////////////////////////////////////////////////////////////////////////
 // Functions used to spiff up dialoges [Lupus]
 //////////////////////////////////////////////////////////////////////////////////

+ 13 - 22
npc/quests/quests_alberta.txt

@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //= kobra_k88
 //===== Current Version: ===================================== 
-//= 1.9
+//= 2.0
 //===== Compatible With: ===================================== 
 //= eAthena SVN
 //===== Description: ========================================= 
@@ -25,6 +25,8 @@
 //= 1.8 Re-made the Doll Quest, now with official dialogs. [DZeroX]
 //= 1.8a Removed .GATs [Lupus]
 //= 1.9 Updated Turtle Quest to official. [L0ne_W0lf]
+//= 2.0 Turtle Island quest now clears TURTLE var and set 
+//= MISC_QUEST bit (MISC_QUEST & 65536) [Lupus]
 //============================================================ 
 
 
@@ -949,7 +951,8 @@ alberta_in,23,104,4	script	Grandpa Turtle#tur	120,{
 		mes "I may not know much, but I won't talk to anyone motivated solely by greed. Go home!";
 		close;
 	case 2:
-		if (TURTLE > 0) {
+		if ((MISC_QUEST & 65536) || TURTLE) {
+			if(MISC_QUEST & 65536) set TURTLE,0; //now clear the var
 			mes "[Grandpa Turtle]";
 			mes "Well...";
 			mes "If you go to eastern side of the Alberta port, you should find an old ferryboatman.";
@@ -987,7 +990,7 @@ alberta_in,23,104,4	script	Grandpa Turtle#tur	120,{
 }
 
 alberta,247,122,4	script	Sailor#tur	709,{
-	if (TURTLE > 0) {
+	if (TURTLE) {
 		mes "[Gotanblue]";
 		mes "Heh...";
 		mes "Your eyes...";
@@ -1221,7 +1224,7 @@ alberta_in,18,102,4	script	Letter#tur	111,{
 }
 
 alberta,248,93,4	script	Voyage log#tur	111,{
-	if (rand(1,2) == 1) {
+	if (rand(2)) {
 		mes "[Voyage log]";
 		mes "03:20 am";
 		mes "There's no light from the stars tonight, and we can't even see a hundred meters ahead of us. The men seem to feel something bad in the air.";
@@ -1419,21 +1422,20 @@ tur_dun01,160,81,4	script	Skull Stone#tur	111,{
 		mes "^3355FFthe stone opened and^000000";
 		mes "^3355FFsome items popped out!!^000000";
 		next;
+		set MISC_QUEST,MISC_QUEST | 65536;
+		set TURTLE,0;
 		switch(rand(1,3)) {
 		case 1:
-			set TURTLE,20;
 			getitem 532,5; //Banana_Juice
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FF5 Banana Juice^000000";
 			close;
 		case 2:
-			set TURTLE,20;
 			getitem 513,5; //Banana
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FF5 Banana^000000";
 			close;
 		case 3:
-			set TURTLE,20;
 			getitem 513,5; //Banana
 			getitem 532,5; //Banana_Juice
 			mes "^3355FFYou've gained^000000";
@@ -1600,63 +1602,55 @@ tur_dun02,49,158,4	script	Turtle Pillar#tur	111,{
 		next;
 		mes "^3355FFThere are many items^000000";
 		mes "^3355FFunder the pillar...^000000";
+		set MISC_QUEST,MISC_QUEST | 65536;
+		set TURTLE,0;
 		switch(rand(1,10)) {
 		case 1:
-			set TURTLE,20;
 			getitem 702,1; //Animal_Blood
 			mes "^3355FFYou've gained ^000000";
 			mes "^3355FFAnimal Gore.^000000";
 			close;
 		case 2:
-			set TURTLE,20;
 			getitem 716,1; //Red_Gemstone
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FFa Red Gemstone.^000000";
 			close;
 		case 3:
-			set TURTLE,20;
 			getitem 734,1; //Red_Frame
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FFa Red Frame^000000";
 			close;
 		case 4:
-			set TURTLE,20;
 			getitem 10019,1; //Red_Muffler
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FFRed Scarf.^000000";
 			close;
 		case 5:
-			set TURTLE,20;
 			getitem 725,1; //Red_Jewel
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FFa Sardonyx.^000000";
 			close;
 		case 6:
-			set TURTLE,20;
 			getitem 716,1; //Red_Gemstone
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FFa Red Gemstone.^000000";
 			close;
 		case 7:
-			set TURTLE,20;
 			getitem 716,1; //Red_Gemstone
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FFa Red Gemstone.^000000";
 			close;
 		case 8:
-			set TURTLE,20;
 			getitem 716,1; //Red_Gemstone
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FFa Red Gemstone.^000000";
 			close;
 		case 9:
-			set TURTLE,20;
 			getitem 716,1; //Red_Gemstone
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FFa Red Gemstone.^000000";
 			close;
 		case 10:
-			set TURTLE,20;
 			getitem 725,1; //Red_Jewel
 			mes "^3355FFYou've gained^000000";
 			mes "^3355FFa Sardonyx.^000000";
@@ -1836,31 +1830,29 @@ tur_dun04,113,178,4	script	Turtle Statue#tur	111,{
 		mes "metal plate. You pull";
 		mes "it open like a drawer.^000000";
 		next;
+		set MISC_QUEST,MISC_QUEST | 65536;
+		set TURTLE,0;
 		if (rand(1,20) == 7) {
 			switch(rand(1,4)) {
 			case 1:
-				set TURTLE,20;
 				getitem 644,1; //Gift_Box
 				mes "^3355FFInside the drawer,";
 				mes "is a Gift Box. This";
 				mes "Gift Box is now yours.^000000";
 				close;
 			case 2:
-				set TURTLE,20;
 				getitem 616,1; //Old_Card_Album
 				mes "^3355FFInside the drawer,";
 				mes "is an Old Card Album.";
 				mes "It is now yours to keep.^000000";
 				close;
 			case 3:
-				set TURTLE,20;
 				getitem 617,1; //Old_Violet_Box
 				mes "^3355FFInside the drawer,";
 				mes "is an Old Purple Box.";
 				mes "It is now yours to keep.^000000";
 				close;
 			case 4:
-				set TURTLE,20;
 				getitem 617,1; //Old_Violet_Box
 				mes "^3355FFInside the drawer,";
 				mes "is an Old Purple Box.";
@@ -1868,7 +1860,6 @@ tur_dun04,113,178,4	script	Turtle Statue#tur	111,{
 				close;
 			}
 		}
-		set TURTLE,20;
 		getitem 604,1; //Branch_Of_Dead_Tree
 		mes "^3355FFInside the drawer,";
 		mes "is a Dead Branch.";