浏览代码

Corrected some typos and small details

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9912 54d463be-8e91-2dee-dedb-b68131a5f0ec
ultramage 18 年之前
父节点
当前提交
32618b7ddd
共有 11 个文件被更改,包括 72 次插入57 次删除
  1. 3 0
      Changelog-Trunk.txt
  2. 1 2
      conf-tmpl/charhelp.txt
  3. 4 4
      db/homunculus_db.txt
  4. 1 1
      db/item_db.txt
  5. 1 1
      db/pet_db.txt
  6. 4 4
      db/skill_unit_db.txt
  7. 0 1
      doc/item_bonus.txt
  8. 32 19
      doc/item_db.txt
  9. 1 1
      doc/script_commands.txt
  10. 24 23
      src/map/script.c
  11. 1 1
      src/map/status.c

+ 3 - 0
Changelog-Trunk.txt

@@ -3,6 +3,9 @@ Date	Added
 AS OF SVN REV. 5091, WE ARE NOW USING TRUNK.  ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
 AS OF SVN REV. 5091, WE ARE NOW USING TRUNK.  ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
 IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
 IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
 
 
+2007/02/26
+	* Corrected some typos and small details
+	  (forgotten bInfiniteEndure [r6487], mysterious '1' in help file, etc)
 2007/02/25
 2007/02/25
 	* Added Krade's makefile fix for 64bit compilers [ultramage]
 	* Added Krade's makefile fix for 64bit compilers [ultramage]
 	- ref: http://www.eathena.ws/board/index.php?showtopic=136622
 	- ref: http://www.eathena.ws/board/index.php?showtopic=136622

+ 1 - 2
conf-tmpl/charhelp.txt

@@ -23,5 +23,4 @@
  60:#disguise <monster_name_or_monster_ID> <char name> - Changes disguise of a player
  60:#disguise <monster_name_or_monster_ID> <char name> - Changes disguise of a player
  60:#undisguise <char name> - Cancels disguise of a player
  60:#undisguise <char name> - Cancels disguise of a player
  60:#changesex <name> - Changes sex of a player (all characters of the account)
  60:#changesex <name> - Changes sex of a player (all characters of the account)
- 60:#warp/#rura+ <mapname> <x> <y> <char name> - Warps character to location of choice
-1
+ 60:#warp/#rura+ <mapname> <x> <y> <char name> - Warps character to location of choice

+ 4 - 4
db/homunculus_db.txt

@@ -11,7 +11,7 @@
 6010,Amistr_H,320,10,20,17,35,11,24,12,21,32,60000,912,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,0,700,1,0,0,0
 6010,Amistr_H,320,10,20,17,35,11,24,12,21,32,60000,912,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,0,700,1,0,0,0
 6011,Filir_H,90,25,29,35,9,8,30,9,21,32,60000,910,45,75,3,6,4,20,8,20,1,10,3,19,4,20,3,19,0,700,1,0,0,0
 6011,Filir_H,90,25,29,35,9,8,30,9,21,32,60000,910,45,75,3,6,4,20,8,20,1,10,3,19,4,20,3,19,0,700,1,0,0,0
 6012,Vanilmirth_H,80,11,11,11,11,11,11,11,21,32,60000,911,30,150,0,7,1,30,1,30,1,30,1,30,1,30,1,30,0,700,1,0,0,0
 6012,Vanilmirth_H,80,11,11,11,11,11,11,11,21,32,60000,911,30,150,0,7,1,30,1,30,1,30,1,30,1,30,1,30,0,700,1,0,0,0
-6013,Lif2_H,150,40,17,20,15,35,24,12,21,32,60000,537,60,100,4,9,5,19,5,19,5,19,4,20,6,20,6,20,0,700,1,0,0,0
-6014,Amistr2_H,320,10,20,17,35,11,24,12,21,32,60000,912,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,0,700,1,0,0,0
-6015,Filir2_H,90,25,29,35,9,8,30,9,21,32,60000,910,45,75,3,6,4,20,8,20,1,10,3,19,4,20,3,19,0,700,1,0,0,0
-6016,Vanilmirth2_H,80,11,11,11,11,11,11,11,21,32,60000,911,30,150,0,7,1,30,1,30,1,30,1,30,1,30,1,30,0,700,1,0,0,0
+6013,Lif_H,150,40,17,20,15,35,24,12,21,32,60000,537,60,100,4,9,5,19,5,19,5,19,4,20,6,20,6,20,0,700,1,0,0,0
+6014,Amistr_H,320,10,20,17,35,11,24,12,21,32,60000,912,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,0,700,1,0,0,0
+6015,Filir_H,90,25,29,35,9,8,30,9,21,32,60000,910,45,75,3,6,4,20,8,20,1,10,3,19,4,20,3,19,0,700,1,0,0,0
+6016,Vanilmirth_H,80,11,11,11,11,11,11,11,21,32,60000,911,30,150,0,7,1,30,1,30,1,30,1,30,1,30,1,30,0,700,1,0,0,0

+ 1 - 1
db/item_db.txt

@@ -1,7 +1,7 @@
 // Items Database
 // Items Database
 //
 //
 // Structure of Database:
 // Structure of Database:
-// ID,AegisName,Name,Type,Price,Sell,Weight,ATK,DEF,Range,Slot,Job,Upper,Gender,Loc,wLV,eLV,Refineable,View,{ Script },{ OnEquip_Script },{ OnUnequip_Script }
+// ID,AegisName,Name,Type,Buy,Sell,Weight,ATK,DEF,Range,Slots,Job,Upper,Gender,Loc,wLV,eLV,Refineable,View,{ Script },{ OnEquip_Script },{ OnUnequip_Script }
 //
 //
 // Healing Items
 // Healing Items
 //=============================================================
 //=============================================================

+ 1 - 1
db/pet_db.txt

@@ -53,7 +53,7 @@
 1110,DOKEBI,Dokebi,637,9019,10005,537,80,15,20,100,250,20,500,250,0,0,300,300,800,{ petskillattack 110,1,0,10; }
 1110,DOKEBI,Dokebi,637,9019,10005,537,80,15,20,100,250,20,500,250,0,0,300,300,800,{ petskillattack 110,1,0,10; }
 1113,DROPS,Drops,620,9002,10013,508,80,15,40,100,250,20,1500,400,1,0,300,400,500,{ petloot 10; }
 1113,DROPS,Drops,620,9002,10013,508,80,15,40,100,250,20,1500,400,1,0,300,400,500,{ petloot 10; }
 1155,PETIT,Petit,640,9022,10011,537,80,15,20,100,250,20,500,200,0,0,800,400,100,{ petskillattack2 91,500,1,0,10; }
 1155,PETIT,Petit,640,9022,10011,537,80,15,20,100,250,20,500,200,0,0,800,400,100,{ petskillattack2 91,500,1,0,10; }
-1167,SAVAGE_BABE,Savage Bebe,627,9009,10015,537,80,9,40,100,250,20,1500,400,0,0,500,500,200,{ petskillbonus bVit,4,10,50; }
+1167,SAVAGE_BABE,Savage Babe,627,9009,10015,537,80,9,40,100,250,20,1500,400,0,0,500,500,200,{ petskillbonus bVit,4,10,50; }
 1170,SOHEE,Sohee,638,9020,10016,537,80,20,10,100,250,20,500,300,0,0,100,1000,200,{ petheal 400,60,33,100; }
 1170,SOHEE,Sohee,638,9020,10016,537,80,20,10,100,250,20,500,300,0,0,100,1000,200,{ petheal 400,60,33,100; }
 1188,BON_GUN,Bon Gun,659,9025,10020,537,80,20,10,100,250,20,500,200,1,0,600,200,400,{ petskillattack2 190,555,1,1,1; }
 1188,BON_GUN,Bon Gun,659,9025,10020,537,80,20,10,100,250,20,500,200,1,0,600,200,400,{ petskillattack2 190,555,1,1,1; }
 1200,ZHERLTHSH,Zherlthsh,660,9026,0,929,80,20,10,100,250,20,50,200,0,0,1000,100,500,{ petskillattack 136,1,0,3; }
 1200,ZHERLTHSH,Zherlthsh,660,9026,0,929,80,20,10,100,250,20,50,200,0,0,1000,100,500,{ petskillattack 136,1,0,3; }

+ 4 - 4
db/skill_unit_db.txt

@@ -18,7 +18,7 @@
 //
 //
 // Notes:
 // Notes:
 // ------
 // ------
-//    0x89,0x8a,0x8b •\ަ–³‚µ
+//    0x89,0x8a,0x8b without indication
 //
 //
 //    u1   u2 lay  r intr target  flag
 //    u1   u2 lay  r intr target  flag
 //
 //
@@ -33,7 +33,7 @@
  79,0x84,    , -1, 1,3000,enemy, 0x008	//PR_MAGNUS
  79,0x84,    , -1, 1,3000,enemy, 0x008	//PR_MAGNUS
  80,0x87,0x88,  0, 1,2000,enemy, 0x002	//WZ_FIREPILLAR
  80,0x87,0x88,  0, 1,2000,enemy, 0x002	//WZ_FIREPILLAR
  83,0x86,    ,  0, 3,1000,enemy, 0x000	//WZ_METEOR
  83,0x86,    ,  0, 3,1000,enemy, 0x000	//WZ_METEOR
- 85,0x86,,0,6:6:6:6:6:6:6:6:6:6:8,1250,enemy,0x008	//WZ_VERMILION
+ 85,0x86,    ,  0, 6:6:6:6:6:6:6:6:6:6:8,1250,enemy,0x008	//WZ_VERMILION
  87,0x8d,    , -1, 0,  -1,all,   0x000	//WZ_ICEWALL
  87,0x8d,    , -1, 0,  -1,all,   0x000	//WZ_ICEWALL
  89,0x86,    ,  0, 5, 450,enemy, 0x008	//WZ_STORMGUST
  89,0x86,    ,  0, 5, 450,enemy, 0x008	//WZ_STORMGUST
  91,0x86,    ,  0, 2,1000,enemy, 0x000	//WZ_HEAVENDRIVE
  91,0x86,    ,  0, 2,1000,enemy, 0x000	//WZ_HEAVENDRIVE
@@ -55,7 +55,7 @@
 285,0x9a,    ,  3, 0,  -1,all,   0x000	//SA_VOLCANO
 285,0x9a,    ,  3, 0,  -1,all,   0x000	//SA_VOLCANO
 286,0x9b,    ,  3, 0,  -1,all,   0x000	//SA_DELUGE
 286,0x9b,    ,  3, 0,  -1,all,   0x000	//SA_DELUGE
 287,0x9c,    ,  3, 0,  -1,all,   0x000	//SA_VIOLENTGALE
 287,0x9c,    ,  3, 0,  -1,all,   0x000	//SA_VIOLENTGALE
-288,0x9d,,3:3:4:4:5,0, -1,all,   0x000	//SA_LANDPROTECTOR
+288,0x9d,    ,  3:3:4:4:5,0, -1,all,   0x000	//SA_LANDPROTECTOR
 306,0x9e,    ,  4, 0,6000,all,   0x200	//BD_LULLABY
 306,0x9e,    ,  4, 0,6000,all,   0x200	//BD_LULLABY
 307,0x9f,    ,  4, 0,  -1,enemy, 0x210	//BD_RICHMANKIM
 307,0x9f,    ,  4, 0,  -1,enemy, 0x210	//BD_RICHMANKIM
 308,0xa0,    ,  4, 0,  -1,enemy, 0x200	//BD_ETERNALCHAOS
 308,0xa0,    ,  4, 0,  -1,enemy, 0x200	//BD_ETERNALCHAOS
@@ -92,4 +92,4 @@
 521,0xbe,    ,  0, 1,1000,enemy, 0x000	//GS_GROUNDDRIFT
 521,0xbe,    ,  0, 1,1000,enemy, 0x000	//GS_GROUNDDRIFT
 527,0xbc,    , -1, 0,2000,enemy, 0x000	//NJ_TATAMIGAESHI
 527,0xbc,    , -1, 0,2000,enemy, 0x000	//NJ_TATAMIGAESHI
 535,0xbd,    , -1, 0, 200,enemy, 0x008	//NJ_KAENSIN
 535,0xbd,    , -1, 0, 200,enemy, 0x008	//NJ_KAENSIN
-538,0xbb,,1:1:1:2:2:2:3:3:3:4,0,-1,all,0x000	//NJ_SUITON
+538,0xbb,    ,  1:1:1:2:2:2:3:3:3:4,0,-1,all,0x000	//NJ_SUITON

+ 0 - 1
doc/item_bonus.txt

@@ -77,7 +77,6 @@ bonus bDefEle,n;				Gives the player's defense element n
 bonus bSplashRange n;			Splash attack radius + n (e.g. n=1 makes a 3*3 cells area, n=2 a 5*5 area, etc | only the highest among all is applied)
 bonus bSplashRange n;			Splash attack radius + n (e.g. n=1 makes a 3*3 cells area, n=2 a 5*5 area, etc | only the highest among all is applied)
 bonus bSplashAddRange n;		Splash attack radius + n (e.g. n=1 makes a 3*3 cells area, n=2 a 5*5 area, etc)
 bonus bSplashAddRange n;		Splash attack radius + n (e.g. n=1 makes a 3*3 cells area, n=2 a 5*5 area, etc)
 
 
-bonus bInfiniteEndure,n;		Unlimited Endure effect, n is meaningless 
 bonus bRestartFullRecover,n;		When reviving, HP and SP are fully filled (n is meaningless)
 bonus bRestartFullRecover,n;		When reviving, HP and SP are fully filled (n is meaningless)
 bonus bNoCastCancel,n;			Prevents casting from being interrupted when hit (does not work in GvG | n is meaningless)
 bonus bNoCastCancel,n;			Prevents casting from being interrupted when hit (does not work in GvG | n is meaningless)
 bonus bNoCastCancel2,n;			Prevents casting from being interrupted when hit (works even in GvG | n is meaningless)
 bonus bNoCastCancel2,n;			Prevents casting from being interrupted when hit (works even in GvG | n is meaningless)

+ 32 - 19
doc/item_db.txt

@@ -3,33 +3,38 @@
 - Explanation of the item_db.txt file and structure.
 - Explanation of the item_db.txt file and structure.
 
 
 ID: Item id
 ID: Item id
-JName: Server name to reference the item in scripts and lookups, should use no
-spaces.
+
+AegisName: Server name to reference the item in scripts and lookups,
+           should use no spaces.
 
 
 Name: Name in english for displaying as output for @ and script commands.
 Name: Name in english for displaying as output for @ and script commands.
 
 
 Type: 
 Type: 
-	0 Healing item.
-	2 Usable item.
-	3 Etc item
-	4 Weapon
-	5 Armor/Garment/Boots/Headgear
-	6 Card
-	7 Pet egg
-	8 Pet equipment
-	10 Ammo (Arrows/Bullets/etc)
-	11 Usable with delayed consumption (item is lost from inventory after
-		selecting a target, for use with skills and pet lures)
-
-Price: Default buying price. When not specified, becomes double the sell price.
-Sell: Default buying price. When not specified, becomes half the buy price.
+	0	Healing item.
+	2	Usable item.
+	3	Etc item
+	4	Weapon
+	5	Armor/Garment/Boots/Headgear
+	6	Card
+	7	Pet egg
+	8	Pet equipment
+	10	Ammo (Arrows/Bullets/etc)
+	11	Usable with delayed consumption (item is lost from inventory
+		after selecting a target, for use with skills and pet lures)
+
+Buy: Default buying price. When not specified, becomes double the sell price.
+
+Sell: Default selling price. When not specified, becomes half the buy price.
 
 
 Weight: Item's weight. Each 10 is 1 weight.
 Weight: Item's weight. Each 10 is 1 weight.
 
 
 ATK: Weapon's attack
 ATK: Weapon's attack
+
 DEF: Armor's defense
 DEF: Armor's defense
+
 Range: Weapon's attack range
 Range: Weapon's attack range
-Slot: Amount of slots item possesses.
+
+Slots: Amount of slots the item possesses.
 
 
 Job: Equippable jobs. Uses the following bitmask table:
 Job: Equippable jobs. Uses the following bitmask table:
 
 
@@ -81,12 +86,14 @@ Loc: Equipment's placement. Values are:
 	2^7 128 = Accessory 2
 	2^7 128 = Accessory 2
 
 
 wLV: Weapon level.
 wLV: Weapon level.
+
 eLV: Base level required to be able to equip.
 eLV: Base level required to be able to equip.
+
 Refineable: 1 if the item can be refined, 0 otherwise.
 Refineable: 1 if the item can be refined, 0 otherwise.
 
 
 View: For normal items, defines a replacement view-sprite for the item (eg:
 View: For normal items, defines a replacement view-sprite for the item (eg:
-	Making apples look like apple juice). The special case are weapons and ammo
-	where this value indicates the weapon-class of the item.
+      Making apples look like apple juice). The special case are weapons
+      and ammo where this value indicates the weapon-class of the item.
 
 
 	For weapons, the types are:
 	For weapons, the types are:
 		0: bare fist
 		0: bare fist
@@ -123,3 +130,9 @@ View: For normal items, defines a replacement view-sprite for the item (eg:
 		7: Kunais
 		7: Kunais
 
 
 Script: Script to execute when the item is used/equipped.
 Script: Script to execute when the item is used/equipped.
+
+OnEquip_Script: Script to execute when the item is equipped.
+                Warning, not all item bonuses will work here as expected.
+
+OnUnequip_Script: Script to execute when the item is unequipped.
+                  Warning, not all item bonuses will work here as expected.

+ 1 - 1
doc/script_commands.txt

@@ -2001,7 +2001,7 @@ Possible types are:
 	   current level if leader leveled up recently).
 	   current level if leader leveled up recently).
 
 
 If retrieval fails (leader not found or party does not exist), this function
 If retrieval fails (leader not found or party does not exist), this function
-returns "null" instead of the character name, and -1 is for the other types.
+returns "null" instead of the character name, and -1 for the other types.
 
 
 ---------------------------------------
 ---------------------------------------
 
 

+ 24 - 23
src/map/script.c

@@ -5075,41 +5075,42 @@ BUILDIN_FUNC(copyarray)
 	}
 	}
 	return 0;
 	return 0;
 }
 }
+
 /*==========================================
 /*==========================================
- * ”z—ñ•Ï�”‚̃TƒCƒY�Š“¾
- *------------------------------------------
- */
-static int getarraysize(struct script_state *st,int num,int postfix,struct linkdb_node** ref)
+ * Returns the size of the specified array
+ *------------------------------------------*/
+static int getarraysize(struct script_state* st, int num, int postfix, struct linkdb_node** ref)
 {
 {
-	int i=(num>>24),c=(i==0? -1:i); // Moded to -1 because even if the first element is 0, it will still report as 1 [Lance]
-	if(postfix == '$'){
-		for(;i<128;i++){
-			void *v=get_val2(st,(num & 0x00FFFFFF)+(i<<24),ref);
-			if(*((char*)v)) c=i;
+	//TODO: unreadable; remove +-1 trick, remove weird for loop, remove typecast
+	int i = (num>>24), c = (i==0?-1:i); // Moded to -1 because even if the first element is 0, it will still report as 1 [Lance]
+	
+	if(postfix == '$') {
+		for(; i < 128; i++) {
+			void* v = get_val2(st, (num & 0x00FFFFFF) + (i<<24), ref);
+			if(*((char*)v)) c = i;
 		}
 		}
-	}else{
-		for(;i<128;i++){
-			void *v=get_val2(st,(num & 0x00FFFFFF)+(i<<24),ref);
-			if((int)v) c=i;
+	} else {
+		for(; i < 128; i++) {
+			void* v = get_val2(st, (num & 0x00FFFFFF) + (i<<24), ref);
+			if((int)v) c = i;
 		}
 		}
 	}
 	}
-	return c+1;
+	return c + 1;
 }
 }
 
 
 BUILDIN_FUNC(getarraysize)
 BUILDIN_FUNC(getarraysize)
 {
 {
-	int num=st->stack->stack_data[st->start+2].u.num;
-	char *name=str_buf+str_data[num&0x00ffffff].str;
-	char prefix=*name;
-	char postfix=name[strlen(name)-1];
+	int num = st->stack->stack_data[st->start+2].u.num;
+	char* name = str_buf + str_data[num&0x00ffffff].str;
+	char prefix = name[0], postfix = name[strlen(name)-1];
 
 
-	if( prefix!='$' && prefix!='@' && prefix!='.' ){
-		ShowWarning("buildin_copyarray: illegal scope !\n");
-		push_val(st->stack,C_INT,0);
+	if( prefix != '$' && prefix != '@' && prefix != '.' ) {
+		ShowWarning("buildin_getarraysize: illegal scope !\n");
+		push_val(st->stack, C_INT, 0);
 		return 1;
 		return 1;
 	}
 	}
 
 
-	push_val(st->stack,C_INT,getarraysize(st,num,postfix,st->stack->stack_data[st->start+2].ref));
+	push_val(st->stack, C_INT, getarraysize(st, num, postfix, st->stack->stack_data[st->start+2].ref));
 	return 0;
 	return 0;
 }
 }
 /*==========================================
 /*==========================================
@@ -6146,7 +6147,7 @@ BUILDIN_FUNC(strcharinfo)
 	num=conv_num(st,& (st->stack->stack_data[st->start+2]));
 	num=conv_num(st,& (st->stack->stack_data[st->start+2]));
 	switch(num){
 	switch(num){
 		case 0:
 		case 0:
-			push_str(st->stack,C_CONSTSTR,sd->status.name);
+			push_str(st->stack,C_STR,aStrdup(sd->status.name));
 			break;
 			break;
 		case 1:
 		case 1:
 			buf=buildin_getpartyname_sub(sd->status.party_id);
 			buf=buildin_getpartyname_sub(sd->status.party_id);

+ 1 - 1
src/map/status.c

@@ -3656,7 +3656,7 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
 		speed += 300;
 		speed += 300;
 
 
 	if(sc->data[SC_GATLINGFEVER].timer==-1)
 	if(sc->data[SC_GATLINGFEVER].timer==-1)
-	{	//% increases (they don't stack, with a few exception)
+	{	//% increases (they don't stack, with a few exceptions)
 		if(sc->data[SC_SPEEDUP1].timer!=-1)
 		if(sc->data[SC_SPEEDUP1].timer!=-1)
 			speed -= speed * 50/100;
 			speed -= speed * 50/100;
 		else if(sc->data[SC_AVOID].timer!=-1)
 		else if(sc->data[SC_AVOID].timer!=-1)