本帖最後由 NewsJai 於 2017-9-21 20:37 編輯
韓版改法 50 倍damage
IL_0000: ldarg 0
IL_0004: ldsfld class [UnityEngine]UnityEngine.GameObject PlayerController::attackTarget
IL_0009: ldstr "Monster"
IL_000e: call instance bool [UnityEngine]UnityEngine.GameObject::CompareTag(string)
IL_0013: ldc.i4.0
IL_0014: bne.un IL_001b
IL_0019: ldc.i4.0
IL_001a: ret
IL_001b: ldarg.0
IL_001c: ldfld class CharacterStatInfo PlayerController::characterInfo
IL_0021: ldfld int32 CharacterStatInfo::ATK
IL_0026: stloc.0
IL_0027: ldarg.0
IL_0028: ldfld class [mscorlib]System.Collections.Generic.List`1<class Modifier> PlayerController::modifiers
IL_002d: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator<!0> class [mscorlib]System.Collections.Generic.List`1<class Modifier>::GetEnumerator()
IL_0032: stloc.2
.try
{
IL_0033: br IL_0049
IL_0038: ldloca.s V_2
IL_003a: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator<class Modifier>::get_Current()
IL_003f: stloc.1
IL_0040: ldloc.1
IL_0041: ldarg.0
IL_0042: ldloc.0
IL_0043: callvirt instance int32 Modifier::AttackPoint(class PlayerController,
int32)
IL_0048: stloc.0
IL_0049: ldloca.s V_2
IL_004b: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator<class Modifier>::MoveNext()
IL_0050: brtrue IL_0038
IL_0055: leave IL_0066
} // end .try
finally
{
IL_005a: ldloc.2
IL_005b: box valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator<class Modifier>
IL_0060: callvirt instance void [mscorlib]System.IDisposable::Dispose()
IL_0065: endfinally
} // end handler
IL_0066: ldc.r4 0.0
IL_006b: stloc.3
IL_006c: ldarg.0
IL_006d: ldfld class StatusEffectManager PlayerController::Status
IL_0072: ldc.i4.1
IL_0073: callvirt instance valuetype StatusEffectManager/Status StatusEffectManager::get_Item(valuetype Skill/EffectType)
IL_0078: stloc.s V_4
IL_007a: ldloca.s V_4
IL_007c: ldfld bool StatusEffectManager/Status::isActive
IL_0081: brfalse IL_009e
IL_0086: ldloc.3
IL_0087: ldarg.0
IL_0088: ldfld class StatusEffectManager PlayerController::Status
IL_008d: ldc.i4.1
IL_008e: callvirt instance valuetype StatusEffectManager/Status StatusEffectManager::get_Item(valuetype Skill/EffectType)
IL_0093: stloc.s V_5
IL_0095: ldloca.s V_5
IL_0097: ldfld float32 StatusEffectManager/Status::Amount
IL_009c: add
IL_009d: stloc.3
IL_009e: ldarg.0
IL_009f: ldfld class StatusEffectManager PlayerController::Status
IL_00a4: ldc.i4.s 10
IL_00a6: callvirt instance valuetype StatusEffectManager/Status StatusEffectManager::get_Item(valuetype Skill/EffectType)
IL_00ab: stloc.s V_6
IL_00ad: ldloca.s V_6
IL_00af: ldfld bool StatusEffectManager/Status::isActive
IL_00b4: brfalse IL_00d2
IL_00b9: ldloc.3
IL_00ba: ldarg.0
IL_00bb: ldfld class StatusEffectManager PlayerController::Status
IL_00c0: ldc.i4.s 10
IL_00c2: callvirt instance valuetype StatusEffectManager/Status StatusEffectManager::get_Item(valuetype Skill/EffectType)
IL_00c7: stloc.s V_7
IL_00c9: ldloca.s V_7
IL_00cb: ldfld float32 StatusEffectManager/Status::Amount
IL_00d0: sub
IL_00d1: stloc.3
IL_00d2: ldloc.0
IL_00d3: ldloc.0
IL_00d4: conv.r4
IL_00d5: ldloc.3
IL_00d6: mul
IL_00d7: call int32 [UnityEngine]UnityEngine.Mathf::RoundToInt(float32)
IL_00dc: add
IL_00dd: ldc.i4 0x32 此為倍數
IL_00e2: mul
IL_00e3: stloc.0
IL_00e4: ldc.i4.0
IL_00e5: ldloc.0
IL_00e6: call int32 [UnityEngine]UnityEngine.Mathf::Max(int32,
int32)
IL_00eb: ret
} // end of method PlayerController::get_AttackPoint
|