Support for augmentation on Classic.

This commit is contained in:
MobiusDev
2017-08-10 23:45:39 +00:00
parent f522f6c5f5
commit a7a354ceea
7 changed files with 2440 additions and 85 deletions

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../xsd/buylist.xsd">
<item id="90012" price="0" /> <!-- Low-grade Life Stone -->
<item id="90013" price="0" /> <!-- Mid-grade Life Stone -->
<item id="90014" price="0" /> <!-- High-grade Life Stone -->
<item id="90015" price="0" /> <!-- Top-grade Life Stone -->
</list>

View File

@@ -39,6 +39,7 @@
</tr>
<tr>
<td align=center><button action="bypass -h admin_buy 9916" value="Currency" width=85 height=21 back="L2UI_ct1.button_df" fore="L2UI_ct1.button_df"></td>
<td align=center><button action="bypass -h admin_buy 9902" value="Life Stones" width=85 height=21 back="L2UI_ct1.button_df" fore="L2UI_ct1.button_df"></td>
<td align=center><button action="bypass -h admin_html gmstore/books.htm" value="Books" width=85 height=21 back="L2UI_ct1.button_df" fore="L2UI_ct1.button_df"></td>
<td></td>
</tr>

View File

@@ -8900,55 +8900,4 @@
<skillLevel val="3" />
<type val="red" />
</augmentation>
<!-- new -->
<augmentation id="30268"> <!-- Passive: When equipped, returns 20% of received damage back to the enemy. -->
<skillId val="13514" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
<augmentation id="30269"> <!-- Active: When used, increases P. Critical Damage by 15% for 5 minutes. -->
<skillId val="13515" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
<augmentation id="30270"> <!-- Passive: When equipped, increases Damage Reflect Resistance by 50%. -->
<skillId val="13516" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
<augmentation id="30271"> <!-- Active: When used, increases Max HP and Max CP by 10% for 5 minutes. -->
<skillId val="13517" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
<augmentation id="30272"> <!-- Active: When used, makes invincible for 30 seconds. The effect will be cancelled when you attack. -->
<skillId val="13518" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
<augmentation id="30273"> <!-- Active: When used, prevents you from dying for 10 seconds. Can be used when HP is 20% or below. -->
<skillId val="13519" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
<augmentation id="30274"> <!-- Active: Prevents the target from using physical/magical skills for 5 seconds. -->
<skillId val="13520" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
<augmentation id="30275"> <!-- Active: Inflicts Sleep on the target for 5 seconds. -->
<skillId val="13521" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
<augmentation id="30276"> <!-- Active: Decreases the target's Atk. Spd. And Casting Spd. By 50% for 10 seconds. -->
<skillId val="13522" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
<augmentation id="30277"> <!-- Active: Increases the target's Critical Damage received and the chance of receiving critical attacks by 90% for 10 seconds. -->
<skillId val="13523" />
<skillLevel val="1" />
<type val="red" />
</augmentation>
</list>

File diff suppressed because it is too large Load Diff

View File

@@ -23,7 +23,6 @@
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:minInclusive value="1" />
<xs:maxInclusive value="65535" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>

View File

@@ -76,7 +76,7 @@ public abstract class AbstractRefinePacket implements IClientIncomingPacket
// lifestone level to player level table
private static final int[] LEVELS =
{
46,
1, // 46?
49,
52,
55,
@@ -255,6 +255,11 @@ public abstract class AbstractRefinePacket implements IClientIncomingPacket
_lifeStones.put(45934, new LifeStone(GRADE_ACC, 13));
_lifeStones.put(45935, new LifeStone(GRADE_ACC, 14));
_lifeStones.put(45936, new LifeStone(GRADE_ACC, 15));
_lifeStones.put(90012, new LifeStone(GRADE_NONE, 0)); // Classic
_lifeStones.put(90013, new LifeStone(GRADE_MID, 0)); // Classic
_lifeStones.put(90014, new LifeStone(GRADE_HIGH, 0)); // Classic
_lifeStones.put(90015, new LifeStone(GRADE_TOP, 0)); // Classic
}
protected static LifeStone getLifeStone(int itemId)
@@ -531,9 +536,22 @@ public abstract class AbstractRefinePacket implements IClientIncomingPacket
{
switch (itemGrade)
{
case D:
{
return GEMSTONE_D; // classic
}
case C:
{
return GEMSTONE_C; // classic
}
case B:
{
return GEMSTONE_B; // classic
}
case A:
{
return GEMSTONE_A; // classic
}
case S:
case S80:
case S84:
@@ -604,9 +622,22 @@ public abstract class AbstractRefinePacket implements IClientIncomingPacket
{
switch (itemGrade)
{
case D:
{
return 200; // classic
}
case C:
{
return 300; // classic
}
case B:
{
return 400; // classic
}
case A:
{
return 500; // classic
}
case S:
case S80:
case S84:

View File

@@ -73,48 +73,24 @@ public final class RequestRefineCancel implements IClientIncomingPacket
int price = 0;
switch (targetItem.getItem().getCrystalType())
{
case D:
{
price = 80000; // classic
break;
}
case C:
{
if (targetItem.getCrystalCount() < 1720)
{
price = 95000;
}
else if (targetItem.getCrystalCount() < 2452)
{
price = 150000;
}
else
{
price = 210000;
}
price = 240000; // classic
break;
}
case B:
{
if (targetItem.getCrystalCount() < 1746)
{
price = 240000;
}
else
{
price = 270000;
}
price = 720000; // classic
break;
}
case A:
{
if (targetItem.getCrystalCount() < 2160)
{
price = 330000;
}
else if (targetItem.getCrystalCount() < 2824)
{
price = 390000;
}
else
{
price = 420000;
}
price = 1500000; // classic - guessed
break;
}
case S: