馬上加入Android 台灣中文網,立即免費下載應用遊戲。
您需要 登錄 才可以下載或查看,沒有帳號?註冊
x
本帖最後由 t610622 於 2014-4-5 00:07 編輯
神魔 一滴
前面步驟就省略不多說了
直接來重點
開啟 tos.il
使用記事本開啟
ctrl+f 搜索 .method public hidebysig instance void
ApplyEffectToPlayer(float32 magnitude,
[opt] bool forceHeal) cil managed
之後的方法不多說了 提示夠明了
.method public hidebysig instance void
ApplyEffectToPlayer(float32 magnitude,
[opt] bool forceHeal) cil managed
{
.param [2] = bool(false)
// Code size 953 (0x3b9)
.maxstack 106
.locals init (bool V_0,
int32 V_1,
valuetype [UnityEngine]UnityEngine.Color[] V_2)
IL_0000: call float32 PlayerData::get_mCurrentHP()
IL_0005: ldc.r4 0.0
IL_000a: bgt.un IL_0010
IL_000f: ret
IL_0010: ldc.i4.1
IL_0011: stloc.0
IL_0012: ldarga.s magnitude
IL_0014: ldarg.2
IL_0015: call void SkillInstance::AlterPlayerHPEvent(float32&,
bool)
IL_001a: ldarg.1
IL_001b: ldc.r4 0.0
IL_0020: blt.un IL_009a
IL_0025: ldarg.1
IL_0026: call float32 RestoreGameplay::get_minRecoverHP()
IL_002b: bge.un IL_0036
IL_0030: ldarg.1
IL_0031: call void RestoreGameplay::set_minRecoverHP(float32)
IL_0036: ldarg.1
IL_0037: call float32 RestoreGameplay::get_maxRecoverHP()
IL_003c: ble.un IL_0047
IL_0041: ldarg.1
IL_0042: call void RestoreGameplay::set_maxRecoverHP(float32)
IL_0047: call float32 RestoreGameplay::get_totalRecoverHP()
IL_004c: ldarg.1
IL_004d: add
IL_004e: call void RestoreGameplay::set_totalRecoverHP(float32)
IL_0053: call float32 PlayerData::get_mCurrentHP()
IL_0058: call float32 PlayerData::get_mMaxHP()
IL_005d: bge.un IL_0095
IL_0062: ldarg.1
IL_0063: ldc.r4 0.0
IL_0068: ble.un IL_0095
IL_006d: ldarg.0
IL_006e: dup
IL_006f: ldfld int32 Labyrinth::recoverDisplayTime
IL_0074: ldc.i4.1
IL_0075: add
IL_0076: stfld int32 Labyrinth::recoverDisplayTime
IL_007b: ldarg.0
IL_007c: call instance void Labyrinth::HpERcoverEffectPlay()
IL_0081: call class AudioController/SFX AudioController::get_sfx()
IL_0086: ldsfld class Sound1 Sound1::"instance"
IL_008b: ldfld class [UnityEngine]UnityEngine.AudioClip Sound1::hpRecover
IL_0090: callvirt instance void AudioController/SFX::Play(class [UnityEngine]UnityEngine.AudioClip)
IL_0095: br IL_0167
IL_009a: ldarg.1
IL_009b: ldc.r4 0.0
IL_00a0: bge.un IL_0167
IL_00a5: call class DummyData Labyrinth::get_protectedData()
IL_00aa: callvirt instance int32 DummyData::get_currentBattleZoneIndex()
IL_00af: call class DummyData Labyrinth::get_protectedData()
IL_00b4: callvirt instance int32 DummyData::get_totalBattleZone()
IL_00b9: bne.un IL_00fa
IL_00be: call float32 PlayerData::get_mCurrentHP()
IL_00c3: call float32 PlayerData::get_mMaxHP()
IL_00c8: ldc.r4 0.5
IL_00cd: mul
IL_00ce: ble.un IL_00fa
IL_00d3: call float32 PlayerData::get_mCurrentHP()
IL_00d8: ldarg.1
IL_00d9: add
IL_00da: call float32 PlayerData::get_mMaxHP()
IL_00df: ldc.r4 0.1
IL_00e4: mul
IL_00e5: bge.un IL_00fa
IL_00ea: ldsfld class [UnityEngine]UnityEngine.Transform LabyrinthCamera::parent
IL_00ef: callvirt instance class [UnityEngine]UnityEngine.Animation [UnityEngine]UnityEngine.Component::get_animation()
IL_00f4: callvirt instance bool [UnityEngine]UnityEngine.Animation::Play()
IL_00f9: pop
IL_00fa: ldarg.1
IL_00fb: neg
IL_00fc: conv.i4
IL_00fd: stloc.1
IL_00fe: call int32 RestoreGameplay::get_totalDamageTaken()
IL_0103: ldloc.1
IL_0104: add
IL_0105: call void RestoreGameplay::set_totalDamageTaken(int32)
IL_010a: ldloc.1
IL_010b: call int32 RestoreGameplay::get_maxDamageTaken()
IL_0110: ble IL_011b
IL_0115: ldloc.1
IL_0116: call void RestoreGameplay::set_maxDamageTaken(int32)
IL_011b: ldloc.1
IL_011c: call int32 RestoreGameplay::get_minDamageTaken()
IL_0121: bge IL_012c
IL_0126: ldloc.1
IL_0127: call void RestoreGameplay::set_minDamageTaken(int32)
IL_012c: ldloc.1
IL_012d: ldsfld int32[] RestoreGameplay::maxDamageTakenPerWave
IL_0132: call class DummyData RestoreGameplay::get_protectedData()
IL_0137: callvirt instance int32 DummyData::get_currentWaveIndex1()
IL_013c: ldelem.i4
IL_013d: ble IL_0153
IL_0142: ldsfld int32[] RestoreGameplay::maxDamageTakenPerWave
IL_0147: call class DummyData RestoreGameplay::get_protectedData()
IL_014c: callvirt instance int32 DummyData::get_currentWaveIndex1()
IL_0151: ldloc.1
IL_0152: stelem.i4
IL_0153: call class AudioController/SFX AudioController::get_sfx()
IL_0158: ldsfld class Sound1 Sound1::"instance"
IL_015d: ldfld class [UnityEngine]UnityEngine.AudioClip Sound1::skill_retribute
IL_0162: callvirt instance void AudioController/SFX::Play(class [UnityEngine]UnityEngine.AudioClip)
IL_0167: call float32 PlayerData::get_mCurrentHP()
IL_016c: ldarg.1
IL_016d: add
IL_016e: call void PlayerData::set_mCurrentHP(float32)
IL_0173: call float32 PlayerData::get_mCurrentHP()
IL_0178: call float32 PlayerData::get_mMaxHP()
IL_017d: ble.un IL_018c
IL_0182: call float32 PlayerData::get_mMaxHP()
IL_0187: call void PlayerData::set_mCurrentHP(float32)
IL_018c: call float32 PlayerData::get_mCurrentHP()
IL_0191: ldc.r4 0.0
IL_0196: bgt.un IL_01d7
IL_019b: ldloc.0
IL_019c: brfalse IL_01b0
IL_01a1: ldc.r4 1.
IL_01a6: call void PlayerData::set_mCurrentHP(float32)
IL_01ab: br IL_01d2
IL_01b0: ldc.r4 0.0
IL_01b5: call void PlayerData::set_mCurrentHP(float32)
IL_01ba: ldsfld class CoroutineControl CoroutineControl::"instance"
IL_01bf: ldarg.0
IL_01c0: call instance class [mscorlib]System.Collections.IEnumerator Labyrinth::GameOver()
IL_01c5: callvirt instance class [UnityEngine]UnityEngine.Coroutine [UnityEngine]UnityEngine.MonoBehaviour::StartCoroutine(class [mscorlib]System.Collections.IEnumerator)
IL_01ca: pop
IL_01cb: ldarg.0
IL_01cc: ldc.i4.0
IL_01cd: call instance void [UnityEngine]UnityEngine.Behaviour::set_enabled(bool)
IL_01d2: br IL_01f0
IL_01d7: call float32 PlayerData::get_mCurrentHP()
IL_01dc: ldc.r4 1.
IL_01e1: bgt.un IL_01f0
IL_01e6: ldc.r4 1.
IL_01eb: call void PlayerData::set_mCurrentHP(float32)
IL_01f0: call float32 PlayerData::get_mCurrentHP()
IL_01f5: call float32 RestoreGameplay::get_minHP()
IL_01fa: bge.un IL_0209
IL_01ff: call float32 PlayerData::get_mCurrentHP()
IL_0204: call void RestoreGameplay::set_minHP(float32)
IL_0209: call float32 PlayerData::get_mCurrentHP()
IL_020e: ldsfld float32[] RestoreGameplay::minPlayerHPPerWave
IL_0213: call class DummyData RestoreGameplay::get_protectedData()
IL_0218: callvirt instance int32 DummyData::get_currentWaveIndex1()
IL_021d: ldelem.r4
IL_021e: bge.un IL_0238
IL_0223: ldsfld float32[] RestoreGameplay::minPlayerHPPerWave
IL_0228: call class DummyData RestoreGameplay::get_protectedData()
IL_022d: callvirt instance int32 DummyData::get_currentWaveIndex1()
IL_0232: call float32 PlayerData::get_mCurrentHP()
IL_0237: stelem.r4
IL_0238: call float32 PlayerData::get_mCurrentHP()
IL_023d: ldc.r4 0.0
IL_0242: ble.un IL_0285
IL_0247: ldsfld class GamePlayBar Labyrinth::newHPBar
IL_024c: call float32 PlayerData::get_mCurrentHP()
IL_0251: call float32 PlayerData::get_mMaxHP()
IL_0256: div
IL_0257: ldc.r4 9.9999998e-003
IL_025c: bge.un IL_026b
IL_0261: ldc.r4 9.9999998e-003
IL_0266: br IL_0276
IL_026b: call float32 PlayerData::get_mCurrentHP()
IL_0270: call float32 PlayerData::get_mMaxHP()
IL_0275: div
IL_0276: ldc.r4 0.40000001
IL_027b: callvirt instance void GamePlayBar::ChangeTo(float32,
float32)
IL_0280: br IL_0299
IL_0285: ldsfld class GamePlayBar Labyrinth::newHPBar
IL_028a: ldc.r4 0.0
IL_028f: ldc.r4 0.40000001
IL_0294: callvirt instance void GamePlayBar::ChangeTo(float32,
float32)
IL_0299: ldsfld class JText Labyrinth::playerHP_JText
IL_029e: call bool [UnityEngine]UnityEngine.Object::op_Implicit(class [UnityEngine]UnityEngine.Object)
IL_02a3: brfalse IL_02d2
IL_02a8: ldsfld class JText Labyrinth::playerHP_JText
IL_02ad: call float32 PlayerData::get_mCurrentHP()
IL_02b2: conv.i4
IL_02b3: box [mscorlib]System.Int32
IL_02b8: ldstr "/"
IL_02bd: call float32 PlayerData::get_mMaxHP()
IL_02c2: conv.i4
IL_02c3: box [mscorlib]System.Int32
IL_02c8: call string [mscorlib]System.String::Concat(object,
object,
object)
IL_02cd: callvirt instance void JTextParent::set_text(string)
IL_02d2: call float32 PlayerData::get_mCurrentHP()
IL_02d7: call float32 PlayerData::get_mMaxHP()
IL_02dc: ldc.r4 0.2
IL_02e1: mul
IL_02e2: ble.un IL_0323
IL_02e7: ldsfld class Animate_Color Labyrinth::playerHP_JText_Ani
IL_02ec: callvirt instance void AnimateEffect::endBehaviour()
IL_02f1: ldsfld class JText Labyrinth::playerHP_JText
IL_02f6: ldfld class [UnityEngine]UnityEngine.Renderer JText::myR
IL_02fb: callvirt instance class [UnityEngine]UnityEngine.Material [UnityEngine]UnityEngine.Renderer::get_material()
IL_0300: ldc.r4 1.
IL_0305: ldc.r4 1.
IL_030a: ldc.r4 1.
IL_030f: ldc.r4 1.
IL_0314: newobj instance void [UnityEngine]UnityEngine.Color::.ctor(float32,
float32,
float32,
float32)
IL_0319: callvirt instance void [UnityEngine]UnityEngine.Material::set_color(valuetype [UnityEngine]UnityEngine.Color)
IL_031e: br IL_03b3
IL_0323: ldc.i4.3
IL_0324: newarr [UnityEngine]UnityEngine.Color
IL_0329: dup
IL_032a: ldc.i4.0
IL_032b: ldelema [UnityEngine]UnityEngine.Color
IL_0330: ldc.r4 1.
IL_0335: ldc.r4 1.
IL_033a: ldc.r4 1.
IL_033f: ldc.r4 1.
IL_0344: newobj instance void [UnityEngine]UnityEngine.Color::.ctor(float32,
float32,
float32,
float32)
IL_0349: stobj [UnityEngine]UnityEngine.Color
IL_034e: dup
IL_034f: ldc.i4.1
IL_0350: ldelema [UnityEngine]UnityEngine.Color
IL_0355: ldc.r4 1.
IL_035a: ldc.r4 0.30000001
IL_035f: ldc.r4 0.30000001
IL_0364: ldc.r4 1.
IL_0369: newobj instance void [UnityEngine]UnityEngine.Color::.ctor(float32,
float32,
float32,
float32)
IL_036e: stobj [UnityEngine]UnityEngine.Color
IL_0373: dup
IL_0374: ldc.i4.2
IL_0375: ldelema [UnityEngine]UnityEngine.Color
IL_037a: ldc.r4 1.
IL_037f: ldc.r4 1.
IL_0384: ldc.r4 1.
IL_0389: ldc.r4 1.
IL_038e: newobj instance void [UnityEngine]UnityEngine.Color::.ctor(float32,
float32,
float32,
float32)
IL_0393: stobj [UnityEngine]UnityEngine.Color
IL_0398: stloc.2
IL_0399: ldsfld class Animate_Color Labyrinth::playerHP_JText_Ani
IL_039e: ldloc.2
IL_039f: ldc.r4 0.5
IL_03a4: ldc.i4.1
IL_03a5: ldc.r4 -1.
IL_03aa: ldc.i4.3
IL_03ab: ldnull
IL_03ac: ldc.i4.0
IL_03ad: callvirt instance class Animate_Color Animate_Color::"init"(valuetype [UnityEngine]UnityEngine.Color[],
float32,
valuetype CurveMode,
float32,
valuetype AniEndAction,
class VoidDelegateT,
int32)
IL_03b2: pop
IL_03b3: call void Labyrinth::CalculateDisplayKiller()
IL_03b8: ret
} // end of method Labyrinth::ApplyEffectToPlayer
有成功的請留言回報! |
評分
-
查看全部評分
|