瀏覽代碼

* Added script command 'equip' to equip items.
* Fixed dependancies in map-server compiling (VC7.1).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5400 54d463be-8e91-2dee-dedb-b68131a5f0ec

Lance 19 年之前
父節點
當前提交
465ab78484
共有 4 個文件被更改,包括 51 次插入4 次删除
  1. 2 0
      Changelog-Trunk.txt
  2. 29 0
      src/map/script.c
  3. 13 2
      vcproj-7.1/map-server_sql.vcproj
  4. 7 2
      vcproj-7.1/map-server_txt.vcproj

+ 2 - 0
Changelog-Trunk.txt

@@ -7,6 +7,8 @@ GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALAR
 2006/02/28
 	* Rewrote LAN support code. Changed configuration file name
 	  lan_support.conf to subnet_athena.conf, changed it syntax. [LuzZza]
+	* Added script command 'equip' to equip items. [Lance]
+	* Fixed dependancies in map-server compiling (VC7.1). [Lance]
 2006/02/24
 	* Prevented guild/party recall to work on GMs of greater level than
 	  yourself. [Skotlex]

+ 29 - 0
src/map/script.c

@@ -401,6 +401,7 @@ int buildin_setd(struct script_state *st);
 // <--- [zBuffer] List of dynamic var commands
 int buildin_petstat(struct script_state *st); // [Lance] Pet Stat Rq: Dubby
 int buildin_callshop(struct script_state *st); // [Skotlex]
+int buildin_equip(struct script_state *st);
 void push_val(struct script_stack *stack,int type,int val);
 int run_func(struct script_state *st);
 
@@ -702,6 +703,7 @@ struct {
 	// <--- [zBuffer] List of dynamic var commands
 	{buildin_petstat,"petstat","i"},
 	{buildin_callshop,"callshop","si"}, // [Skotlex]
+	{buildin_equip,"equip","i"},
 	{buildin_setitemscript,"setitemscript","is"}, //Set NEW item bonus script. Lupus
 	{buildin_disguise,"disguise","i"}, //disguise player. Lupus
 	{buildin_undisguise,"undisguise","i"}, //undisguise player. Lupus
@@ -9379,6 +9381,33 @@ int buildin_unequip(struct script_state *st)
 	return 0;
 }
 
+int buildin_equip(struct script_state *st)
+{
+	int nameid=0,count=0,i;
+	struct map_session_data *sd;
+	struct item_data *item_data;
+
+	sd = script_rid2sd(st);
+
+	nameid=conv_num(st,& (st->stack->stack_data[st->start+2]));
+	if(nameid>=500 && (item_data = itemdb_search(nameid)) != NULL)
+		for(i=0;i<MAX_INVENTORY;i++){
+			if(sd->status.inventory[i].nameid==nameid)
+				count+=sd->status.inventory[i].amount;
+		}
+	else{
+		if(battle_config.error_log)
+			ShowError("wrong item ID : equipitem(%i)\n",nameid);
+		return 1;
+	}
+	
+	if(count){
+		pc_equipitem(sd,nameid,item_data->equip);
+	}
+
+	return 0;
+}
+
 //=======================================================
 // strlen [Valaris]
 //-------------------------------------------------------

+ 13 - 2
vcproj-7.1/map-server_sql.vcproj

@@ -171,8 +171,7 @@
 				RelativePath="..\src\common\db.c">
 			</File>
 			<File
-				RelativePath="..\src\common\ers.c"
-				>
+				RelativePath="..\src\common\ers.c">
 			</File>
 			<File
 				RelativePath="..\src\common\graph.c">
@@ -192,6 +191,9 @@
 			<File
 				RelativePath="..\src\zlib\iowin32.c">
 			</File>
+			<File
+				RelativePath="..\src\map\irc.c">
+			</File>
 			<File
 				RelativePath="..\src\map\itemdb.c">
 			</File>
@@ -286,6 +288,9 @@
 			<File
 				RelativePath="..\src\map\battle.h">
 			</File>
+			<File
+				RelativePath="..\src\common\cbasetypes.h">
+			</File>
 			<File
 				RelativePath="..\src\map\charcommand.h">
 			</File>
@@ -310,6 +315,9 @@
 			<File
 				RelativePath="..\src\common\db.h">
 			</File>
+			<File
+				RelativePath="..\src\common\ers.h">
+			</File>
 			<File
 				RelativePath="..\src\common\graph.h">
 			</File>
@@ -322,6 +330,9 @@
 			<File
 				RelativePath="..\src\map\intif.h">
 			</File>
+			<File
+				RelativePath="..\src\map\irc.h">
+			</File>
 			<File
 				RelativePath="..\src\map\itemdb.h">
 			</File>

+ 7 - 2
vcproj-7.1/map-server_txt.vcproj

@@ -171,8 +171,7 @@
 				RelativePath="..\src\common\db.c">
 			</File>
 			<File
-				RelativePath="..\src\common\ers.c"
-				>
+				RelativePath="..\src\common\ers.c">
 			</File>
 			<File
 				RelativePath="..\src\common\graph.c">
@@ -286,6 +285,9 @@
 			<File
 				RelativePath="..\src\map\battle.h">
 			</File>
+			<File
+				RelativePath="..\src\common\cbasetypes.h">
+			</File>
 			<File
 				RelativePath="..\src\map\charcommand.h">
 			</File>
@@ -310,6 +312,9 @@
 			<File
 				RelativePath="..\src\common\db.h">
 			</File>
+			<File
+				RelativePath="..\src\common\ers.h">
+			</File>
 			<File
 				RelativePath="..\src\common\graph.h">
 			</File>