talán????
This commit is contained in:
39
Main.cs
39
Main.cs
@@ -199,6 +199,43 @@ namespace KCM
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static string TryGetGameModeName()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (GameState.inst == null)
|
||||||
|
return "null";
|
||||||
|
|
||||||
|
var t = GameState.inst.GetType();
|
||||||
|
|
||||||
|
var modeProp = t.GetProperty("mode", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic)
|
||||||
|
?? t.GetProperty("Mode", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic)
|
||||||
|
?? t.GetProperty("CurrentMode", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
|
||||||
|
|
||||||
|
if (modeProp != null)
|
||||||
|
{
|
||||||
|
object m = modeProp.GetValue(GameState.inst, null);
|
||||||
|
return m != null ? m.GetType().Name : "null";
|
||||||
|
}
|
||||||
|
|
||||||
|
var modeField = t.GetField("mode", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic)
|
||||||
|
?? t.GetField("Mode", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic)
|
||||||
|
?? t.GetField("currentMode", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic)
|
||||||
|
?? t.GetField("currMode", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
|
||||||
|
|
||||||
|
if (modeField != null)
|
||||||
|
{
|
||||||
|
object fm = modeField.GetValue(GameState.inst);
|
||||||
|
return fm != null ? fm.GetType().Name : "null";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
return "unknown";
|
||||||
|
}
|
||||||
|
|
||||||
public static void RunPostLoadRebuild(string reason)
|
public static void RunPostLoadRebuild(string reason)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@@ -439,6 +476,8 @@ namespace KCM
|
|||||||
Main.helper.Log(
|
Main.helper.Log(
|
||||||
"VillagerStallDetect: no movement for " + (now - lastVillagerMoveMs) +
|
"VillagerStallDetect: no movement for " + (now - lastVillagerMoveMs) +
|
||||||
"ms timeScale=" + Time.timeScale +
|
"ms timeScale=" + Time.timeScale +
|
||||||
|
" mode=" + TryGetGameModeName() +
|
||||||
|
" villagerSystemEnabled=" + (VillagerSystem.inst != null && VillagerSystem.inst.enabled) +
|
||||||
" villagers=" + Villager.villagers.Count +
|
" villagers=" + Villager.villagers.Count +
|
||||||
" sampleGuid=" + probedVillagerGuid +
|
" sampleGuid=" + probedVillagerGuid +
|
||||||
" samplePos=" + v.Pos);
|
" samplePos=" + v.Pos);
|
||||||
|
|||||||
@@ -39,6 +39,25 @@ namespace KCM.Packets.Lobby
|
|||||||
Main.helper.Log(ex.ToString());
|
Main.helper.Log(ex.ToString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
GameState.inst.SetNewMode(GameState.inst.playingMode);
|
||||||
|
Main.helper.Log("StartGame: forced playing mode");
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
Main.helper.Log("StartGame: failed forcing playing mode");
|
||||||
|
Main.helper.Log(ex.ToString());
|
||||||
|
}
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Main.RunPostLoadRebuild("StartGame");
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
SpeedControlUI.inst.SetSpeed(0);
|
SpeedControlUI.inst.SetSpeed(0);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user