public static PlayerGoalState JSONToPlayerGoalState(JSONObject jobj) { PlayerGoalState playerGoalState = new PlayerGoalState(); playerGoalState.ID = jobj.asString("ID", () => "Invalid"); playerGoalState.CompletedStars.Value = jobj.asInt("CompletedStars", () => 0); playerGoalState.ClaimedStars.Value = jobj.asInt("ClaimedStars", () => 0); return(playerGoalState); }
public static JSONObject PlayerGoalStateToJSON(PlayerGoalState state) { JSONObject jSONObject = new JSONObject(JSONObject.Type.OBJECT); jSONObject.AddField("ID", state.ID); jSONObject.AddField("CompletedStars", state.CompletedStars.Value); jSONObject.AddField("ClaimedStars", state.ClaimedStars.Value); return(jSONObject); }
public static PlayerGoalState GetOrCreatePlayerGoalState(string id) { PlayerGoalState playerGoalState = PlayerData.Instance.PlayerGoalStates.Find((PlayerGoalState pgs) => pgs.ID == id); if (playerGoalState == null) { PlayerGoalState playerGoalState2 = new PlayerGoalState(); playerGoalState2.ID = id; playerGoalState = playerGoalState2; PlayerData.Instance.PlayerGoalStates.Add(playerGoalState); } return(playerGoalState); }
public static PlayerGoalAction Create(PlayerGoalConfig config, PlayerGoalState state) { switch (config.Task) { case PlayerGoalTask.None: return(null); case PlayerGoalTask.Never: return(new PlayerGoalActionNever()); case PlayerGoalTask.Skip: return(new PlayerGoalActionSkip()); case PlayerGoalTask.Triggered: return(new PlayerGoalActionTriggered(state.CompletedStars, state.ClaimedStars, config.StarReq)); default: { UniRx.IObservable <BigDouble> rxProperty = ReferenceTaskTarget(config.Task, config.Parameter); return(new PlayerGoalActionBigDouble(rxProperty, state.ClaimedStars, config.StarReq)); } } }