Ejemplo n.º 1
0
        //private static void Check



        private static void GetNextObject()
        {
            var newUser = new AccountData()
            {
                SteamAccountId = "Babster", aType = AccountData.ActionType.CheckPwd
            };

            newUser.Name           = "Babster";
            newUser.AdditionalData = "temp pwd";

            using (var client = ServerAuth.CreateClient())
            {
                client.BaseAddress = new Uri(ServerAuth.ServerAddress + "/api/Story/NextStep");

                string      tStr     = JsonConvert.SerializeObject(newUser);
                HttpContent tContent = new StringContent(tStr, null, "application/json");

                var response = client.GetAsync(client.BaseAddress);
                response.Wait();
                var          result    = response.Result;
                var          resString = result.Content.ReadAsStringAsync().Result;
                StringAndInt nextStep  = JsonConvert.DeserializeObject <StringAndInt>(resString);
                Console.WriteLine("Next step type: {0}, id: {1}", nextStep.StrValue, nextStep.IntValue);
            }
        }
Ejemplo n.º 2
0
        public StringAndInt ToStringAndInt()
        {
            StringAndInt tElement = new StringAndInt();

            tElement.StrValue = ObjectType;
            tElement.IntValue = ObjectId;
            return(tElement);
        }
Ejemplo n.º 3
0
        public HttpResponseMessage RegisterStoryElementCompleted()
        {
            string       steamId           = User.Identity.Name;
            StringAndInt currentElement    = PlayerDataSql.RegisterStoryElementCompleted(steamId);
            string       serializedElement = JsonConvert.SerializeObject(currentElement);
            var          response          = new HttpResponseMessage(HttpStatusCode.OK);

            response.Content = new StringContent(serializedElement);
            return(response);
        }
Ejemplo n.º 4
0
    public void CreateToken(token.TOKENTYPE enu, StringAndInt st, int beginlin, int ind)
    {
        //TODO:
        //DO A FOREACH LOOP OF THE TOKENS OF WHICH INSTRUCTIONS TO INCLUDE

        foreach (tokendef tokens in tokendictionary)
        {
            if (tokens.tokentype == (int)enu)
            {
                token newtok = new token();
                newtok.b_line       = beginlin; //- tok.Length;
                newtok.dialogue_num = ind;
                newtok.tokentype    = (token.TOKENTYPE)tokens.tokentype;
                newtok.capturedat   = st.words;
                newtok.number       = st.integer;
                newtok.time         = 0;
                newtok.number       = 0;
                listoftokens.Add(newtok);
            }
        }
    }
Ejemplo n.º 5
0
    public static void SetCommonvalue(string name, StringAndInt value)
    {
        int           id;
        string        q     = "SELECT id AS Result FROM s_common_values WHERE name = @str1";
        List <string> names = new List <string> {
            name
        };

        id = DataConnection.GetResultInt(q, names, 0);
        if (id == 0)
        {
            q = $@"INSERT INTO s_common_values(name, value_str, value_int) VALUES (@str1, @str2, {value.IntValue})";
            names.Add(value.StrValue);
        }
        else
        {
            names[0] = value.StrValue;
            q        = $@"UPDATE s_common_values SET value_str = @str1, value_int = {value.IntValue} WHERE id = {id}";
        }
        DataConnection.Execute(q, names);
    }
Ejemplo n.º 6
0
    public static StringAndInt GetCommonValue(string name)
    {
        StringAndInt tValue = new StringAndInt();

        string q;

        q = "SELECT ISNULL(value_str, '') AS value_str, ISNULL(value_int, 0) AS value_int FROM s_common_values WHERE name = @str1 ";
        List <string> names = new List <string>();

        names.Add(name);
        SqlDataReader r = DataConnection.GetReader(q, names);

        if (r.HasRows == true)
        {
            r.Read();
            tValue.StrValue = Convert.ToString(r["value_str"]);
            tValue.IntValue = Convert.ToInt32(r["value_int"]);
        }
        r.Close();

        return(tValue);
    }
Ejemplo n.º 7
0
    /// <summary>
    /// Возвращает имя и идентификатор объекта, который в данный момент доступен для игрока.
    /// Начинается всё со сцены истории story 1 потом битва и так далее пока не дойдёт до
    /// базы. Там будем разрабатывать систему миссий которая будет выглядеть несколько
    /// по-другому.
    /// </summary>
    /// <param name="steamId"></param>
    /// <returns></returns>
    public static StringAndInt NextStoryObject(string steamId)
    {
        int          playerId = PlayerId(steamId);
        StringAndInt curData  = PlayerStoryFlowHub.CurrentProgressElementForPlayer(playerId).ToStringAndInt();

        //Если битва еще не началась, то игрока надо кинуть на сцену рига корабля
        if (curData.StrValue == "battle")
        {
            int battleId = curData.IntValue;

            //Проверка на то, что битва уже идёт
            Battle curBattle = Battle.BattleByTypeId(playerId, battleId);

            //Если битва не идёт надо проверить нет ли уже готового рига под эту битву
            if (curBattle == null)
            {
                SpaceshipRig rig = SpaceshipRig.RigForBattle(playerId, battleId);
                if (rig == null)
                {
                    curData.StrValue = "rig";
                }
                else
                {
                    curData.StrValue = "launch battle";
                }
            }
        }

        //Если следующий объект истории - станция, тогда нужно поставить специальную пометку в профиль игрока что у него есть станция
        if (curData.StrValue == "station")
        {
            PlayerStoryFlowHub.SetStationAvailable(playerId);
        }

        return(curData);
    }
Ejemplo n.º 8
0
 public NodeData(StringAndInt stringAndInt)
 {
     this.data = stringAndInt;
 }
Ejemplo n.º 9
0
    public static bool BattleCanBeStarted(string steamId, int battleSceneId)
    {
        StringAndInt nextObject = PlayerDataSql.NextStoryObject(steamId);

        return(nextObject.StrValue == "battle" && nextObject.IntValue == battleSceneId);
    }