Ejemplo n.º 1
0
    public void AddPlanetEvent(string jsonString, int eventNum, int numEvents)
    {
        // if this is the first event, initialise the planetEvents array
        if (planetEvents == null)
        {
            planetEvents = new PlanetEvent[numEvents];
        }

        // generate a PlanetEvent and its EventCriteria and effects based on this
        JsonData jsonEvent = JsonMapper.ToObject(jsonString);

        PlanetEvent newEvent = new PlanetEvent();

        newEvent.name        = jsonEvent["name"].ToString();
        newEvent.description = jsonEvent["description"].ToString();
        if (JsonImport.JsonDataContainsKey(jsonEvent, "interval"))
        {
            newEvent.interval = Convert.ToInt32(jsonEvent["interval"].ToString());
        }
        else
        {
            newEvent.interval = 0;
        }

        // generate EventCriteria objects
        newEvent.criteria = new EventCriteria[jsonEvent["criteria"].Count];
        for (int i = 0; i < jsonEvent["criteria"].Count; i++)
        {
            newEvent.criteria[i] = GenerateEventCriteria(jsonEvent["criteria"][i]);
        }

        // generate variable effects
        newEvent.variableEffects = new VariableEffect[jsonEvent["variableEffects"].Count];
        for (int i = 0; i < jsonEvent["variableEffects"].Count; i++)
        {
            newEvent.variableEffects[i] = GenerateVariableEffect(jsonEvent["variableEffects"][i]);
        }

        planetEvents[eventNum] = newEvent;
    }
Ejemplo n.º 2
0
    public void AddPlanetEvent(string jsonString, int eventNum, int numEvents)
    {
        // if this is the first event, initialise the planetEvents array
        if (planetEvents == null)
        {
            planetEvents = new PlanetEvent[numEvents];
        }

        // generate a PlanetEvent and its EventCriteria and effects based on this
        JsonData jsonEvent = JsonMapper.ToObject(jsonString);

        PlanetEvent newEvent = new PlanetEvent();
        newEvent.name = jsonEvent["name"].ToString();
        newEvent.description = jsonEvent["description"].ToString();
        if (JsonImport.JsonDataContainsKey(jsonEvent, "interval"))
        {
            newEvent.interval = Convert.ToInt32(jsonEvent["interval"].ToString());
        } else
        {
            newEvent.interval = 0;
        }

        // generate EventCriteria objects
        newEvent.criteria = new EventCriteria[jsonEvent["criteria"].Count];
        for (int i = 0; i < jsonEvent["criteria"].Count; i++)
        {
            newEvent.criteria[i] = GenerateEventCriteria(jsonEvent["criteria"][i]);
        }

        // generate variable effects
        newEvent.variableEffects = new VariableEffect[jsonEvent["variableEffects"].Count];
        for (int i = 0; i < jsonEvent["variableEffects"].Count; i++)
        {
            newEvent.variableEffects[i] = GenerateVariableEffect(jsonEvent["variableEffects"][i]);
        }

        planetEvents[eventNum] = newEvent;

    }