private void TriggerHandler(FusionTrigger trigger) { if (User.IsCurrentProfileExist()) { Fuse(trigger.priceName, trigger, trigger.fusionExecutions); } }
private void FinishTrigger(FusionTrigger trigger, NPNFError error) { if (trigger != null) { trigger.FinishTriggeredAction(this, trigger, error); } }
private void Fuse(string priceName, FusionTrigger trigger, List <FuseExecutions> executions) { if (!IsInitialized) { NPNFError error = NPNFError.GetGameError(NPNFError.GameCode.FUSION_NOT_INITIALIZED); if (OnFuseError != null) { OnFuseError(this, trigger, error); } FinishTrigger(trigger, error); return; } User.CurrentProfile.Fusion.Fuse(Model.Name, priceName, executions, 1, (FormulaResult result, NPNFError error) => { if (error == null) { if (OnFuseDone != null) { OnFuseDone(this, trigger, result); } } else { if (OnFuseError != null) { OnFuseError(this, trigger, error); } } FinishTrigger(trigger, error); }); }
protected abstract void FuseErrorHandler(Fusion fusion, FusionTrigger trigger, NPNFError error);
protected abstract void FuseDoneHandler(Fusion fusion, FusionTrigger trigger, FormulaResult results);