浏览代码

Item DB corrections (#7919)

* Implemented status change SC_G_LIFEPOTION 
* Corrected status change SC_ALMIGHTY
eppc0330 1 年之前
父节点
当前提交
a7ea96afa9
共有 8 个文件被更改,包括 314 次插入223 次删除
  1. 0 13
      db/re/item_combos.yml
  2. 41 30
      db/re/item_db_equip.yml
  3. 81 9
      db/re/item_db_etc.yml
  4. 181 129
      db/re/item_db_usable.yml
  5. 6 29
      db/re/status.yml
  6. 1 0
      src/map/script_constants.hpp
  7. 2 12
      src/map/status.cpp
  8. 2 1
      src/map/status.hpp

+ 0 - 13
db/re/item_combos.yml

@@ -11274,7 +11274,6 @@ Body:
           - S_Liberation_Shoes
     Script: |
       bonus2 bAddClass,Class_Boss,5;
-      bonus2 bMagicAddClass,Class_Boss,5;
   - Combos:
       - Combo:
           - S_Brutal_Shield
@@ -22423,9 +22422,6 @@ Body:
       bonus bDelayrate,-15;
       bonus bAtkRate,7;
   - Combos:
-      - Combo:
-          - Cvt_Physical_Wing
-          - Battle_Processor
       - Combo:
           - Cvt_Physical_Wing
           - Battle_Processor_
@@ -22434,9 +22430,6 @@ Body:
       bonus bShortAtkRate,5;
       bonus bAtkRate,7;
   - Combos:
-      - Combo:
-          - Cvt_Physical_Wing
-          - Deepblue_Sunglasses
       - Combo:
           - Deepblue_Sunglasses_
           - Cvt_Physical_Wing
@@ -22451,9 +22444,6 @@ Body:
       bonus bDelayrate,-15;
       bonus bMatkRate,7;
   - Combos:
-      - Combo:
-          - Cvt_Magical_Wing
-          - Battle_Processor
       - Combo:
           - Cvt_Magical_Wing
           - Battle_Processor_
@@ -22461,9 +22451,6 @@ Body:
       bonus2 bMagicAtkEle,Ele_All,5;
       bonus bMatkRate,7;
   - Combos:
-      - Combo:
-          - Cvt_Magical_Wing
-          - Deepblue_Sunglasses
       - Combo:
           - Deepblue_Sunglasses_
           - Cvt_Magical_Wing

+ 41 - 30
db/re/item_db_equip.yml

@@ -919,7 +919,7 @@ Body:
     Script: |
       bonus bAtkEle,Ele_Water;
       bonus2 bAddEff,Eff_Freeze,500;
-      bonus2 bAddEff2,Eff_Freeze,10;
+      bonus2 bAddEff2,Eff_Freeze,100;
       skill "MG_COLDBOLT",3;
       bonus3 bAutoSpell,"MG_COLDBOLT",3,100;
   - Id: 1132
@@ -28566,6 +28566,7 @@ Body:
     ArmorLevel: 1
     EquipLevelMin: 94
     Script: |
+      bonus bUnbreakableShoes;
       bonus bMdef,10;
       bonus bMaxHPrate,20;
       bonus bMaxSPrate,20;
@@ -56367,7 +56368,6 @@ Body:
       Costume_Head_Low: true
     ArmorLevel: 1
     EquipLevelMin: 1
-    View: 1378
     Script: |
       hateffect HAT_EF_FLUTTER_BUTTERFLY,true;
     UnEquipScript: |
@@ -57045,7 +57045,6 @@ Body:
       Costume_Head_Low: true
     ArmorLevel: 1
     EquipLevelMin: 1
-    View: 1380
     Script: |
       hateffect HAT_EF_ANGEL_FLUTTERING,true;
     UnEquipScript: |
@@ -75795,7 +75794,7 @@ Body:
       bonus bUnbreakableWeapon;
       bonus2 bAddEff,Eff_Stun,1500;
       bonus3 bAutoSpell,"SM_BASH",max(getskilllv("SM_BASH"),5),20;
-      bonus2 bAddEff2,Eff_Freeze,100;
+      bonus2 bAddEff2,Eff_Freezing,100;
       if (BaseLevel>99)
          bonus bBaseAtk,20;
   - Id: 16017
@@ -82679,9 +82678,14 @@ Body:
       Head_Low: true
     ArmorLevel: 1
     EquipLevelMin: 20
+    Trade:
+      NoDrop: true
+      NoTrade: true
+      NoCart: true
+      NoGuildStorage: true
+      NoMail: true
+      NoAuction: true
     View: 823
-    Script: |
-      bonus2 bAddRace,RC_Plant,2;
   - Id: 18678
     AegisName: Leek_In_Mouth
     Name: Leek In Mouth
@@ -91074,7 +91078,7 @@ Body:
       bonus bBaseAtk,10*(.@r/2);
       bonus bAspdRate,2*(.@r/3);
       if (.@r>=8)
-         bonus bCritAtkRate,10*getskilllv("TF_DOUBLE");
+         bonus bCritAtkRate,10*(getskilllv("TF_DOUBLE")/2);
       if (.@r>=11) {
          bonus bAspd,1;
          bonus bBaseAtk,20;
@@ -98505,8 +98509,6 @@ Body:
     ArmorLevel: 1
     EquipLevelMin: 1
     View: 717
-    Script: |
-      bonus bVariableCastrate,-10;
   - Id: 19904
     AegisName: C_Skull_Cap
     Name: Costume Skull cap
@@ -109674,7 +109676,6 @@ Body:
     Locations:
       Costume_Garment: true
     ArmorLevel: 1
-    View: 94
     Script: |
       hateffect HAT_EF_GEARWHEEL,true;
     UnEquipScript: |
@@ -143884,7 +143885,6 @@ Body:
     Name: Costume Bubbly Arc Angeling Hairband
     Type: Armor
     View: 1633
-    Weight: 10
     Locations:
       Costume_Head_Top: true
     ArmorLevel: 1
@@ -144418,7 +144418,6 @@ Body:
       Costume_Head_Low: true
     ArmorLevel: 1
     EquipLevelMin: 1
-    View: 1665
     Script: |
       hateffect(HAT_EF_C_FLUTTERBUTTERFLY_BL,true);
     UnEquipScript: |
@@ -145573,7 +145572,7 @@ Body:
     Name: C Fluffy Heart Earmuffs
     Type: Armor
     Locations:
-      Costume_Head_Mid: true
+      Costume_Head_Top: true
     ArmorLevel: 1
     EquipLevelMin: 1
     View: 1707
@@ -147691,7 +147690,7 @@ Body:
     Name: C Mermaid Wig
     Type: Armor
     Locations:
-      Costume_Head_Top: true
+      Costume_Head_Low: true
     ArmorLevel: 1
     EquipLevelMin: 1
     View: 1866
@@ -155169,6 +155168,10 @@ Body:
     Locations:
       Costume_Head_Mid: true
     ArmorLevel: 1
+    Script: |
+      hateffect(HAT_EF_BLACK_THUNDER,true);
+    UnEquipScript: |
+      hateffect(HAT_EF_BLACK_THUNDER,false);
   - Id: 400150
     AegisName: Thanos_Helm_4
     Name: Thanos Fighter Helmet
@@ -160199,7 +160202,7 @@ Body:
     ArmorLevel: 1
     View: 496
   - Id: 400462
-    AegisName: aegis_400462
+    AegisName: C_Sailor_Cap
     Name: Costume Sailor Cap
     Type: Armor
     Locations:
@@ -162533,6 +162536,10 @@ Body:
     Locations:
       Costume_Head_Mid: true
     ArmorLevel: 1
+    Script: |
+      hateffect(HAT_EF_alice_tea,true);
+    UnEquipScript: |
+      hateffect(HAT_EF_alice_tea,false);
   - Id: 410232
     AegisName: aegis_410232
     Name: Gambler's Seal
@@ -164389,7 +164396,7 @@ Body:
       bonus2 bAddSize,Size_All,15;
       bonus2 bMagicAddSize,Size_All,15;
   - Id: 420224
-    AegisName: aegis_420224
+    AegisName: C_Ocean_Color_Long
     Name: Costume Ocean Color Long
     Type: Armor
     Locations:
@@ -164682,6 +164689,7 @@ Body:
     Type: Armor
     Locations:
       Costume_Head_Top: true
+      Costume_Head_Mid: true
       Costume_Head_Low: true
     ArmorLevel: 1
     EquipLevelMin: 1
@@ -179010,7 +179018,6 @@ Body:
     Locations:
       Costume_Garment: true
     ArmorLevel: 1
-    View: 100
     Script: |
       hateffect HAT_EF_SNOW_POWDER,true;
     UnEquipScript: |
@@ -181589,6 +181596,10 @@ Body:
     Locations:
       Costume_Garment: true
     ArmorLevel: 1
+    Script: |
+      hateffect(HAT_EF_rabbit_aura,true);
+    UnEquipScript: |
+      hateffect(HAT_EF_rabbit_aura,false);
   - Id: 480310
     AegisName: C_Giant_Mad_Bunny
     Name: Costume Big Mad Bunny
@@ -181840,7 +181851,7 @@ Body:
          bonus2 bHPDrainRate,5,100;
       }
   - Id: 480320
-    AegisName: aegis_480320
+    AegisName: C_Aqua_Fin_Decoration
     Name: Costume Aqua Fin Decoration
     Type: Armor
     Locations:
@@ -181931,20 +181942,20 @@ Body:
          bonus bPAtk,5;
          bonus bSMatk,5;
          if (.@g>=ENCHANTGRADE_C) {
-            bonus2 bIgnoreDefRaceRate,RC_Angel,5;
-            bonus2 bIgnoreDefRaceRate,RC_Dragon,5;
-            bonus2 bIgnoreMdefRaceRate,RC_Angel,5;
-            bonus2 bIgnoreMdefRaceRate,RC_Dragon,5;
+            bonus2 bIgnoreResRaceRate,RC_Angel,5;
+            bonus2 bIgnoreResRaceRate,RC_Dragon,5;
+            bonus2 bIgnoreMResRaceRate,RC_Angel,5;
+            bonus2 bIgnoreMResRaceRate,RC_Dragon,5;
             if (.@g>=ENCHANTGRADE_B) {
-               bonus2 bIgnoreDefRaceRate,RC_Angel,5;
-               bonus2 bIgnoreDefRaceRate,RC_Dragon,5;
-               bonus2 bIgnoreMdefRaceRate,RC_Angel,5;
-               bonus2 bIgnoreMdefRaceRate,RC_Dragon,5;
+               bonus2 bIgnoreResRaceRate,RC_Angel,5;
+               bonus2 bIgnoreResRaceRate,RC_Dragon,5;
+               bonus2 bIgnoreMResRaceRate,RC_Angel,5;
+               bonus2 bIgnoreMResRaceRate,RC_Dragon,5;
                if (.@g>=ENCHANTGRADE_A) {
-                  bonus2 bIgnoreDefRaceRate,RC_Angel,5;
-                  bonus2 bIgnoreDefRaceRate,RC_Dragon,5;
-                  bonus2 bIgnoreMdefRaceRate,RC_Angel,5;
-                  bonus2 bIgnoreMdefRaceRate,RC_Dragon,5;
+                  bonus2 bIgnoreResRaceRate,RC_Angel,5;
+                  bonus2 bIgnoreResRaceRate,RC_Dragon,5;
+                  bonus2 bIgnoreMResRaceRate,RC_Angel,5;
+                  bonus2 bIgnoreMResRaceRate,RC_Dragon,5;
                }
             }
          }

+ 81 - 9
db/re/item_db_etc.yml

@@ -15891,6 +15891,30 @@ Body:
       NoGuildStorage: true
       NoMail: true
       NoAuction: true
+  - Id: 6046
+    AegisName: Clothing_Dye_Coupon
+    Name: Clothing Dye Coupon
+    Type: Etc
+    Trade:
+      NoDrop: true
+      NoTrade: true
+      NoSell: true
+      NoCart: true
+      NoGuildStorage: true
+      NoMail: true
+      NoAuction: true
+  - Id: 6047
+    AegisName: Clothing_Dye_Coupon2
+    Name: Clothing Dye Coupon II
+    Type: Etc
+    Trade:
+      NoDrop: true
+      NoTrade: true
+      NoSell: true
+      NoCart: true
+      NoGuildStorage: true
+      NoMail: true
+      NoAuction: true
   - Id: 6048
     AegisName: Unidentified_Mineral
     Name: Unidentified Mineral
@@ -20987,6 +21011,8 @@ Body:
     Type: Etc
     Buy: 10
     Weight: 10
+    Flags:
+      BuyingStore: true
   - Id: 6650
     AegisName: Shabby_Ring
     Name: Old Ring
@@ -21557,6 +21583,36 @@ Body:
     Type: Etc
     Buy: 10
     Weight: 100
+  - Id: 6720
+    AegisName: Status_Reset_Coupon
+    Name: Status Reset Coupon
+    Type: Etc
+    Buy: 10
+    EquipLevelMin: 1
+    Trade:
+      NoDrop: true
+      NoTrade: true
+      NoSell: true
+      NoCart: true
+      NoStorage: true
+      NoGuildStorage: true
+      NoMail: true
+      NoAuction: true
+  - Id: 6721
+    AegisName: Status_Reset_Coupon2
+    Name: Status Reset Coupon
+    Type: Etc
+    Buy: 10
+    EquipLevelMin: 1
+    Trade:
+      NoDrop: true
+      NoTrade: true
+      NoSell: true
+      NoCart: true
+      NoStorage: true
+      NoGuildStorage: true
+      NoMail: true
+      NoAuction: true
   - Id: 6722
     AegisName: Delicious_Clam
     Name: Delicious Clam Flesh
@@ -23895,6 +23951,14 @@ Body:
     AegisName: Evt_Cos_Coin
     Name: Event Stone Coin
     Type: Etc
+    Trade:
+      NoDrop: true
+      NoTrade: true
+      NoSell: true
+      NoCart: true
+      NoGuildStorage: true
+      NoMail: true
+      NoAuction: true
   - Id: 7001
     AegisName: Mould_Powder
     Name: Mould Powder
@@ -36555,6 +36619,8 @@ Body:
     Name: Orc Warlord Token
     Type: Etc
     Weight: 10
+    Flags:
+      BuyingStore: true
   - Id: 25509
     AegisName: Shining_Round_Shell
     Name: Shiny Round Shell
@@ -36624,6 +36690,8 @@ Body:
     Name: White Snake's Tear
     Type: Etc
     Weight: 10
+    Flags:
+      BuyingStore: true
   - Id: 25627
     AegisName: Gold_Card
     Name: Gold Card
@@ -36635,6 +36703,8 @@ Body:
     Name: Knotted Letter
     Type: Etc
     Weight: 10
+    Flags:
+      BuyingStore: true
   - Id: 25633
     AegisName: Token_Of_Wootan
     Name: Wootan's Token
@@ -39632,7 +39702,7 @@ Body:
     Flags:
       DropEffect: CLIENT
     Script: |
-      bonus2 bAddEffWhenHit,Eff_Freeze,3000 + (readparam(bInt) >= 110 ? 1000 : 0);
+      bonus2 bAddEffWhenHit,Eff_Freezing,3000 + (readparam(bInt) >= 110 ? 1000 : 0);
       bonus bMdef,5;
   - Id: 27152
     AegisName: Cutie_Card
@@ -40747,7 +40817,7 @@ Body:
     Flags:
       DropEffect: CLIENT
     Script: |
-      autobonus "{ bonus bDef,300; }",20,10000,BF_WEAPON|BF_SHORT,"{ specialeffect2 EF_POTION_BERSERK; active_transform 1040,10000; }";
+      autobonus "{ bonus bDef,300; }",20,10000,BF_WEAPON,"{ specialeffect2 EF_POTION_BERSERK; active_transform 1040,10000; }";
   - Id: 27264
     AegisName: Evil_Shadow_Card
     Name: Evil Shadow Card
@@ -43526,9 +43596,9 @@ Body:
     Type: Card
     SubType: Enchant
     Script: |
-      hateffect HAT_EF_GUMGANG,true;
+      hateffect HAT_EF_CIRCLEPOWER,true;
     UnEquipScript: |
-      hateffect HAT_EF_GUMGANG,false;
+      hateffect HAT_EF_CIRCLEPOWER,false;
   - Id: 29161
     AegisName: Pink_Glow_Effect
     Name: Pink Glow Effect
@@ -43872,16 +43942,18 @@ Body:
     Type: Card
     SubType: Enchant
     Script: |
-      hateffect HAT_EF_WATER_BELOW2,true;
+      hateffect HAT_EF_WATER_BELOW4,true;
     UnEquipScript: |
-      hateffect HAT_EF_WATER_BELOW2,false;
+      hateffect HAT_EF_WATER_BELOW4,false;
   - Id: 29226
     AegisName: ExplodingWave_Effect
     Name: Crimson Wave Effect
     Type: Card
     SubType: Enchant
     Script: |
-      /* todo */
+      hateffect HAT_EF_DOUBLEGUMGANG,true;
+    UnEquipScript: |
+      hateffect HAT_EF_DOUBLEGUMGANG,false;
   - Id: 29227
     AegisName: Heal
     Name: Heal
@@ -46819,7 +46891,7 @@ Body:
       BuyingStore: true
       DropEffect: CLIENT
     Script: |
-      bonus5 bAutoSpell,"SO_PSYCHIC_WAVE",1,100,BF_WEAPON,1;
+      bonus5 bAutoSpell,"SO_PSYCHIC_WAVE",1,100,BF_SHORT,1;
   - Id: 300007
     AegisName: Jungoliant_Card
     Name: Jeweled Ungoliant Card
@@ -51017,7 +51089,7 @@ Body:
       }
       bonus2 bMagicAtkEle,Ele_Dark,.@rate;
       bonus2 bMagicAtkEle,Ele_Holy,.@rate;
-      bonus2 bMagicAtkEle,Ele_Fire,.@rate;
+      bonus2 bMagicAtkEle,Ele_Ghost,.@rate;
       bonus2 bMagicAtkEle,Ele_Neutral,.@rate;
   - Id: 300376
     AegisName: Eyes_Dollocaris_Card

文件差异内容过多而无法显示
+ 181 - 129
db/re/item_db_usable.yml


+ 6 - 29
db/re/status.yml

@@ -2888,22 +2888,12 @@ Body:
       NoDispell: true
       NoBanishingBuster: true
       NoClearance: true
-    EndOnStart:
-      L_Lifepotion: true
-      M_Lifepotion: true
-    Fail:
-      S_Lifepotion: true
   - Status: L_Lifepotion
     Icon: EFST_L_LIFEPOTION
     Flags:
       NoDispell: true
       NoBanishingBuster: true
       NoClearance: true
-    EndOnStart:
-      S_Lifepotion: true
-      M_Lifepotion: true
-    Fail:
-      L_Lifepotion: true
   - Status: Jexpboost
     Icon: EFST_CASH_PLUSONLYJOBEXP
     Flags:
@@ -8269,19 +8259,12 @@ Body:
       NoDispell: true
       NoBanishingBuster: true
       NoClearance: true
-    EndOnStart:
-      S_Lifepotion: true
-      L_Lifepotion: true
-    Fail:
-      M_Lifepotion: true
   - Status: S_Manapotion
     Icon: EFST_S_MANAPOTION
     Flags:
       NoDispell: true
       NoBanishingBuster: true
       NoClearance: true
-    Fail:
-      S_Manapotion: true
   - Status: Sub_Weaponproperty
     Flags:
       NoBanishingBuster: true
@@ -8294,12 +8277,6 @@ Body:
   - Status: Almighty
     Icon: EFST_ALMIGHTY
     CalcFlags:
-      Str: true
-      Agi: true
-      Vit: true
-      Int: true
-      Dex: true
-      Luk: true
       Batk: true
       Matk: true
     Flags:
@@ -8309,12 +8286,6 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
     EndOnStart:
-      Food_Str_Cash: true
-      Food_Agi_Cash: true
-      Food_Vit_Cash: true
-      Food_Int_Cash: true
-      Food_Dex_Cash: true
-      Food_Luk_Cash: true
       UltimateCook: true
   - Status: UltimateCook
     Icon: EFST_ULTIMATECOOK
@@ -8772,3 +8743,9 @@ Body:
     DurationLookup: MT_RUSH_QUAKE
     CalcFlags:
       All: true
+  - Status: G_LIFEPOTION
+    Icon: EFST_G_LIFEPOTION
+    Flags:
+      NoDispell: true
+      NoBanishingBuster: true
+      NoClearance: true

+ 1 - 0
src/map/script_constants.hpp

@@ -1892,6 +1892,7 @@
 	export_constant(SC_RELIEVE_OFF);
 	export_constant(SC_RUSH_QUAKE1);
 	export_constant(SC_RUSH_QUAKE2);
+	export_constant(SC_G_LIFEPOTION);
 
 #ifdef RENEWAL
 	export_constant(SC_EXTREMITYFIST2);

+ 2 - 12
src/map/status.cpp

@@ -6413,8 +6413,6 @@ static unsigned short status_calc_str(struct block_list *bl, status_change *sc,
 #endif
 	if (sc->getSCE(SC_UNIVERSESTANCE))
 		str += sc->getSCE(SC_UNIVERSESTANCE)->val2;
-	if (sc->getSCE(SC_ALMIGHTY))
-		str += sc->getSCE(SC_ALMIGHTY)->val1;
 	if (sc->getSCE(SC_ULTIMATECOOK))
 		str += sc->getSCE(SC_ULTIMATECOOK)->val1;
 	if (sc->getSCE(SC_ALL_STAT_DOWN))
@@ -6500,8 +6498,6 @@ static unsigned short status_calc_agi(struct block_list *bl, status_change *sc,
 #endif
 	if (sc->getSCE(SC_UNIVERSESTANCE))
 		agi += sc->getSCE(SC_UNIVERSESTANCE)->val2;
-	if (sc->getSCE(SC_ALMIGHTY))
-		agi += sc->getSCE(SC_ALMIGHTY)->val1;
 	if (sc->getSCE(SC_ULTIMATECOOK))
 		agi += sc->getSCE(SC_ULTIMATECOOK)->val1;
 	if (sc->getSCE(SC_ALL_STAT_DOWN))
@@ -6577,8 +6573,6 @@ static unsigned short status_calc_vit(struct block_list *bl, status_change *sc,
 #endif
 	if (sc->getSCE(SC_UNIVERSESTANCE))
 		vit += sc->getSCE(SC_UNIVERSESTANCE)->val2;
-	if (sc->getSCE(SC_ALMIGHTY))
-		vit += sc->getSCE(SC_ALMIGHTY)->val1;
 	if (sc->getSCE(SC_ULTIMATECOOK))
 		vit += sc->getSCE(SC_ULTIMATECOOK)->val1;
 	if (sc->getSCE(SC_CUP_OF_BOZA))
@@ -6671,8 +6665,6 @@ static unsigned short status_calc_int(struct block_list *bl, status_change *sc,
 	if (sc->getSCE(SC_NIBELUNGEN) && sc->getSCE(SC_NIBELUNGEN)->val2 == RINGNBL_ALLSTAT)
 		int_ += 15;
 #endif
-	if (sc->getSCE(SC_ALMIGHTY))
-		int_ += sc->getSCE(SC_ALMIGHTY)->val1;
 	if (sc->getSCE(SC_ULTIMATECOOK))
 		int_ += sc->getSCE(SC_ULTIMATECOOK)->val1;
 	if (sc->getSCE(SC_ALL_STAT_DOWN))
@@ -6760,8 +6752,6 @@ static unsigned short status_calc_dex(struct block_list *bl, status_change *sc,
 #endif
 	if (sc->getSCE(SC_UNIVERSESTANCE))
 		dex += sc->getSCE(SC_UNIVERSESTANCE)->val2;
-	if (sc->getSCE(SC_ALMIGHTY))
-		dex += sc->getSCE(SC_ALMIGHTY)->val1;
 	if (sc->getSCE(SC_ULTIMATECOOK))
 		dex += sc->getSCE(SC_ULTIMATECOOK)->val1;
 	if (sc->getSCE(SC_ALL_STAT_DOWN))
@@ -6835,8 +6825,6 @@ static unsigned short status_calc_luk(struct block_list *bl, status_change *sc,
 #endif
 	if (sc->getSCE(SC_UNIVERSESTANCE))
 		luk += sc->getSCE(SC_UNIVERSESTANCE)->val2;
-	if (sc->getSCE(SC_ALMIGHTY))
-		luk += sc->getSCE(SC_ALMIGHTY)->val1;
 	if (sc->getSCE(SC_ULTIMATECOOK))
 		luk += sc->getSCE(SC_ULTIMATECOOK)->val1;
 	if (sc->getSCE(SC_MYSTICPOWDER))
@@ -10928,6 +10916,7 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
 		case SC_L_LIFEPOTION:
 		case SC_M_LIFEPOTION:
 		case SC_S_MANAPOTION:
+		case SC_G_LIFEPOTION:
 			if( val1 == 0 ) return 0;
 			// val1 = heal percent/amout
 			// val2 = seconds between heals
@@ -14012,6 +14001,7 @@ TIMER_FUNC(status_change_timer){
 	case SC_S_LIFEPOTION:
 	case SC_L_LIFEPOTION:
 	case SC_M_LIFEPOTION:
+	case SC_G_LIFEPOTION:
 		if( --(sce->val4) >= 0 ) {
 			// val1 < 0 = per max% | val1 > 0 = exact amount
 			int hp = 0;

+ 2 - 1
src/map/status.hpp

@@ -1282,7 +1282,8 @@ enum sc_type : int16 {
 
 	SC_RUSH_QUAKE1,
 	SC_RUSH_QUAKE2,
-
+	
+	SC_G_LIFEPOTION,
 #ifdef RENEWAL
 	SC_EXTREMITYFIST2, //! NOTE: This SC should be right before SC_MAX, so it doesn't disturb if RENEWAL is disabled
 #endif

部分文件因为文件数量过多而无法显示