Windows Phone Marketplace 連結:
http://www.windowsphone.com/zh-HK/apps/70f3c02b-0d27-4772-877e-df6726b05732
XAP 包:
http://www.wpxap.com/thread-473098-1-1.html
RollInTheHole.dll 的 IL 修改如下:
*** r.org.ilThu Aug 30 16:35:46 2012--- r.ilThu Aug 30 16:43:20 2012****************** 185,195 **** IL_00ac: ldarg.0 IL_00ad: ldfld class [XNAPandaEngine]XNAPandaEngine.Base.BackgroundMusicManager RollInTheHole.Main::musicManager IL_00b2: callvirt instance void class [mscorlib]System.Collections.ObjectModel.Collection`1::Add(!0)- IL_00b7: ldarg.0- IL_00b8: call instance class [Microsoft.Xna.Framework.Game]Microsoft.Xna.Framework.GameComponentCollection [Microsoft.Xna.Framework.Game]Microsoft.Xna.Framework.Game::get_Components()- IL_00bd: ldarg.0- IL_00be: newobj instance void [Microsoft.Xna.Framework.Game]Microsoft.Xna.Framework.GamerServices.GamerServicesComponent::.ctor(class [Microsoft.Xna.Framework.Game]Microsoft.Xna.Framework.Game)- IL_00c3: callvirt instance void class [mscorlib]System.Collections.ObjectModel.Collection`1::Add(!0) IL_00c8: call class [XNAPandaEngine]XNAPandaEngine.EngineManager [XNAPandaEngine]XNAPandaEngine.EngineManager::get_Instance() IL_00cd: ldarg.0 IL_00ce: ldfld class [XNAPandaEngine]XNAPandaEngine.Base.BackgroundMusicManager RollInTheHole.Main::musicManager--- 185,190 ----
XNAPandaEngine.dll 的 IL 修改如下:
*** x.org.ilThu Aug 30 16:47:15 2012--- x.ilThu Aug 30 17:01:44 2012****************** 33592,33597 ****--- 33592,33598 ---- .locals init (class [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.SignedInGamer V_0, class [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.LeaderboardWriter V_1, class [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.LeaderboardEntry V_2)+ ret IL_0000: call bool [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.Guide::get_IsTrialMode() IL_0005: brtrue.s IL_0040 ****************** 33704,33709 ****--- 33705,33711 ---- .locals init (int32 V_0, object V_1, class [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.SignedInGamer V_2)+ ret IL_0000: ldc.i4.0 IL_0001: stloc.0 IL_0002: newobj instance void [mscorlib]System.Object::.ctor()****************** 40278,40360 **** IL_0270: call instance class XNAPandaEngine.Base.Node XNAPandaEngine.Base.Node::AddChild(class XNAPandaEngine.Base.Node, float32) IL_0275: pop- IL_0276: call class [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.AchievementCollection XNAPandaEngine.Achievments.LiveSupport::GetAchievments()- IL_027b: stloc.3- IL_027c: ldc.i4.0- IL_027d: stloc.s V_4- IL_027f: ldc.i4.0- IL_0280: stloc.s V_5- IL_0282: ldc.i4.0- IL_0283: stloc.s V_6- IL_0285: ldloc.3- IL_0286: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.AchievementCollection::GetEnumerator()- IL_028b: stloc.s V_11- .try- {- IL_028d: br.s IL_0304- - IL_028f: ldloc.s V_11- IL_0291: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current()- IL_0296: stloc.s V_7- IL_0298: ldloc.s V_7- IL_029a: newobj instance void XNAPandaEngine.Scenes.AchievementsElement::.ctor(class [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.Achievement)- IL_029f: stloc.s V_8- IL_02a1: ldloc.s V_8- IL_02a3: ldc.r4 240.- IL_02a8: ldc.i4 0xa0- IL_02ad: ldloc.s V_4- IL_02af: dup- IL_02b0: ldc.i4.1- IL_02b1: add- IL_02b2: stloc.s V_4- IL_02b4: ldc.i4.s 120- IL_02b6: mul- IL_02b7: add- IL_02b8: conv.r4- IL_02b9: newobj instance void [Microsoft.Xna.Framework]Microsoft.Xna.Framework.Vector2::.ctor(float32,- float32)- IL_02be: callvirt instance void XNAPandaEngine.Base.Node::set_Position(valuetype [Microsoft.Xna.Framework]Microsoft.Xna.Framework.Vector2)- IL_02c3: ldarg.0- IL_02c4: ldfld class XNAPandaEngine.Sprite XNAPandaEngine.Scenes.AchievementsScene::list- IL_02c9: ldloc.s V_8- IL_02cb: callvirt instance class XNAPandaEngine.Base.Node XNAPandaEngine.Base.Node::AddChild(class XNAPandaEngine.Base.Node)- IL_02d0: pop- IL_02d1: ldarg.0- IL_02d2: ldloc.s V_8- IL_02d4: callvirt instance valuetype [Microsoft.Xna.Framework]Microsoft.Xna.Framework.Vector2 XNAPandaEngine.Base.Node::get_Position()- IL_02d9: ldfld float32 [Microsoft.Xna.Framework]Microsoft.Xna.Framework.Vector2::Y- IL_02de: ldc.r4 150.- IL_02e3: add- IL_02e4: stfld float32 XNAPandaEngine.Scenes.AchievementsScene::maxY- IL_02e9: ldloc.s V_7- IL_02eb: callvirt instance bool [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.Achievement::get_IsEarned()- IL_02f0: brfalse.s IL_0304- - IL_02f2: ldloc.s V_5- IL_02f4: ldc.i4.1- IL_02f5: add- IL_02f6: stloc.s V_5- IL_02f8: ldloc.s V_6- IL_02fa: ldloc.s V_7- IL_02fc: callvirt instance int32 [Microsoft.Xna.Framework.GamerServices]Microsoft.Xna.Framework.GamerServices.Achievement::get_GamerScore()- IL_0301: add- IL_0302: stloc.s V_6- IL_0304: ldloc.s V_11- IL_0306: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext()- IL_030b: brtrue.s IL_028f- - IL_030d: leave.s IL_031b - } // end .try- finally- {- IL_030f: ldloc.s V_11- IL_0311: brfalse.s IL_031a- - IL_0313: ldloc.s V_11- IL_0315: callvirt instance void [mscorlib]System.IDisposable::Dispose()- IL_031a: endfinally- } // end handler IL_031b: ldc.r4 20. IL_0320: ldc.r4 80. IL_0325: newobj instance void [Microsoft.Xna.Framework]Microsoft.Xna.Framework.Vector2::.ctor(float32,--- 40280,40286 ----****************** 59053,59058 ****--- 58979,58985 ---- IL_0270: call instance class XNAPandaEngine.Base.Node XNAPandaEngine.Base.Node::AddChild(class XNAPandaEngine.Base.Node, float32) IL_0275: pop+ ret IL_0276: ldarg.0 IL_0277: call instance bool XNAPandaEngine.Scenes.LeaderBoardScene::IsConnected() IL_027c: brfalse IL_03a1