浏览代码

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.
 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
 	* Added Krade's makefile fix for 64bit compilers [ultramage]
 	- 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:#undisguise <char name> - Cancels disguise of a player
  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
 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
-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
 //
 // 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
 //=============================================================

+ 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; }
 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; }
-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; }
 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; }

+ 4 - 4
db/skill_unit_db.txt

@@ -18,7 +18,7 @@
 //
 // Notes:
 // ------
-//    0x89,0x8a,0x8b •\ަ–³‚µ
+//    0x89,0x8a,0x8b without indication
 //
 //    u1   u2 lay  r intr target  flag
 //
@@ -33,7 +33,7 @@
  79,0x84,    , -1, 1,3000,enemy, 0x008	//PR_MAGNUS
  80,0x87,0x88,  0, 1,2000,enemy, 0x002	//WZ_FIREPILLAR
  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
  89,0x86,    ,  0, 5, 450,enemy, 0x008	//WZ_STORMGUST
  91,0x86,    ,  0, 2,1000,enemy, 0x000	//WZ_HEAVENDRIVE
@@ -55,7 +55,7 @@
 285,0x9a,    ,  3, 0,  -1,all,   0x000	//SA_VOLCANO
 286,0x9b,    ,  3, 0,  -1,all,   0x000	//SA_DELUGE
 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
 307,0x9f,    ,  4, 0,  -1,enemy, 0x210	//BD_RICHMANKIM
 308,0xa0,    ,  4, 0,  -1,enemy, 0x200	//BD_ETERNALCHAOS
@@ -92,4 +92,4 @@
 521,0xbe,    ,  0, 1,1000,enemy, 0x000	//GS_GROUNDDRIFT
 527,0xbc,    , -1, 0,2000,enemy, 0x000	//NJ_TATAMIGAESHI
 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 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 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)

+ 32 - 19
doc/item_db.txt

@@ -3,33 +3,38 @@
 - Explanation of the item_db.txt file and structure.
 
 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.
 
 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.
 
 ATK: Weapon's attack
+
 DEF: Armor's defense
+
 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:
 
@@ -81,12 +86,14 @@ Loc: Equipment's placement. Values are:
 	2^7 128 = Accessory 2
 
 wLV: Weapon level.
+
 eLV: Base level required to be able to equip.
+
 Refineable: 1 if the item can be refined, 0 otherwise.
 
 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:
 		0: bare fist
@@ -123,3 +130,9 @@ View: For normal items, defines a replacement view-sprite for the item (eg:
 		7: Kunais
 
 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).
 
 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;
 }
+
 /*==========================================
- * ”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)
 {
-	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;
 	}
 
-	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;
 }
 /*==========================================
@@ -6146,7 +6147,7 @@ BUILDIN_FUNC(strcharinfo)
 	num=conv_num(st,& (st->stack->stack_data[st->start+2]));
 	switch(num){
 		case 0:
-			push_str(st->stack,C_CONSTSTR,sd->status.name);
+			push_str(st->stack,C_STR,aStrdup(sd->status.name));
 			break;
 		case 1:
 			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;
 
 	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)
 			speed -= speed * 50/100;
 		else if(sc->data[SC_AVOID].timer!=-1)