فهرست منبع

Fixed bugreport:5543 this item is official rentable and it should unmount upon expire.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15845 54d463be-8e91-2dee-dedb-b68131a5f0ec
shennetsind 13 سال پیش
والد
کامیت
badb682be9
2فایلهای تغییر یافته به همراه8 افزوده شده و 13 حذف شده
  1. 2 8
      src/map/itemdb.h
  2. 6 5
      src/map/pc.c

+ 2 - 8
src/map/itemdb.h

@@ -17,8 +17,7 @@
 
 #define MAX_SEARCH	5  //Designed for search functions, species max number of matches to display.
 
-enum item_itemid
-{
+enum item_itemid {
 	ITEMID_EMPERIUM = 714,
 	ITEMID_YELLOW_GEMSTONE = 715,
 	ITEMID_RED_GEMSTONE = 716,
@@ -27,14 +26,9 @@ enum item_itemid
 	ITEMID_STONE = 7049,
 	ITEMID_SKULL_ = 7420,
 	ITEMID_TOKEN_OF_SIEGFRIED = 7621,
-/**
- * Ranger
- **/
 	ITEMID_TRAP_ALLOY = 7940,
-/**
- * Arch Bishop
- **/
 	ITEMID_ANCILLA = 12333,
+	ITEMID_REINS_OF_MOUNT = 12622,
 };
 
 /**

+ 6 - 5
src/map/pc.c

@@ -456,13 +456,14 @@ void pc_inventory_rentals(struct map_session_data *sd)
 		if( sd->status.inventory[i].expire_time == 0 )
 			continue;
 
-		if( sd->status.inventory[i].expire_time <= time(NULL) )
-		{
+		if( sd->status.inventory[i].expire_time <= time(NULL) ) {
+			if( sd->status.inventory[i].nameid == ITEMID_REINS_OF_MOUNT
+					&& sd->sc.option&OPTION_MOUNTING ) {
+				pc_setoption(sd, sd->sc.option&~OPTION_MOUNTING);
+			}
 			clif_rental_expired(sd->fd, i, sd->status.inventory[i].nameid);
 			pc_delitem(sd, i, sd->status.inventory[i].amount, 1, 0, LOG_TYPE_OTHER);
-		}
-		else
-		{
+		} else {
 			expire_tick = (unsigned int)(sd->status.inventory[i].expire_time - time(NULL)) * 1000;
 			clif_rental_time(sd->fd, sd->status.inventory[i].nameid, (int)(expire_tick / 1000));
 			next_tick = min(expire_tick, next_tick);