static MagazinePush ParseMagazinePush(string[] tokens) { if (tokens.Length < 3 || tokens[0].ToLowerInvariant() != "magazinepush") { return(null); } var res = new MagazinePush(); if (int.TryParse(tokens[1], out res.VillageID) && int.TryParse(tokens[2], out res.TargetID)) { return(res); } else { return(null); } }
IEnumerator MagazinePush(VillageBody village, MagazinePush push) { EntityBody PushTarget = EntityManager.EntityHash[push.TargetID]; CurrentCommand = push; IsSneaking = false; yield return(WaitWithProgress(0.5f)); if (!Equipment.Contains(PushTarget)) { yield break; } if (!village.WillAccept(PushTarget)) { yield break; } RemoveFromEq(PushTarget); village.MagazinePush(PushTarget); CurrentCommand = null; }