protected override bool PrivateUpdate(ScenarioFrame frame) { if (!mSuccess.TestBeforehand(Manager, Sim, Target)) { IncStat("Success TestBeforehand Fail"); return(false); } if (!base.PrivateUpdate(frame)) { return(false); } SimPersonality manager = Manager as SimPersonality; if (manager == null) { return(false); } manager.SetLeader(null, false); mSuccess.Perform(this, frame, "Success", Sim, Target); return(true); }