internal void EggPocketTrigger(Player player, Egg.EggChallenge challenge) { ForEachPlayerSync(player, (p) => { p.EggPocket_Trigger(challenge); }); }
internal void EggPocket_Trigger(Egg.EggChallenge challenge) { if (EggPocket == null || EggPocket.egg == null || EggPocket.egg.challenge != challenge) { return; } if (EggPocket.HasFreePetSlot(PetList) && EggPocket.Progress(challenge)) { EggPocket.Hatch(this); } }
internal bool Progress(Egg.EggChallenge challenge) { if (egg == null) { return(false); } if (egg.challenge == challenge) { egg.hatchProgress++; } return(egg.hatchProgress >= egg.RequiredProgress); }
public void EggPocketTrigger(Egg.EggChallenge challenge) { if (Party != null) { switch (challenge) { case Egg.EggChallenge.Exploration: Party.EggPocketTrigger(this, challenge); return; } } else { EggPocket_Trigger(challenge); } }