Windows Phone marketplace link:
Http://www.windowsphone.com/zh-HK/apps/70f3c02b-0d27-4772-877e-df6726b05732
Xap package:
Http://www.wpxap.com/thread-473098-1-1.html
Modify rollinthehole. dll as follows:
*** r.org.il Thu Aug 30 16:35:46 2012
--- r.il Thu 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 ----
The IL modification of xnapandaengine. dll is as follows:
*** x.org.il Thu Aug 30 16:47:15 2012
--- x.il Thu 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