Example #1
0
            public IEnumerator PlayerCharactersRoutine(string playerId, IAdminApi caller)
            {
                string uri  = NetworkSettings.instance.BaseUri() + "/api/characters/list";
                var    form = new WWWForm();

                form.AddField("playerId", NetworkSettings.instance.username);
                form.AddField("authtoken", NetworkSettings.instance.authtoken);
                form.AddField("get_playerId", playerId);
                WWW www = new WWW(uri, form.data, form.headers);

                yield return(www);

                if (www.error != null)
                {
                    caller.OnPlayerCharactersError(www.error);
                }
                else
                {
                    MemoryStream stream     = new MemoryStream(www.bytes);
                    Characters   characters = Serializer.Deserialize <Characters>(stream);
                    caller.OnPlayerCharacters(characters);
                }
            }
Example #2
0
        private void CreateNpcs()
        {
            Characters characters = new Characters();
            int createdCount = 0;
            int npcCount = prefabNames.Count * gameEntitiesPerPrefab;
            Queue<string> names = NpcName.GetNames(npcCount);

            foreach (string prefabName in prefabNames) {
                for (int i = 0; i < gameEntitiesPerPrefab; i++) {
                    string playerId = prefabName + i;
                    string characterId = names.Dequeue();

                    CharacterApi.instance.CreateNpc(playerId, characterId, Vitals.Template.NpcTemplate, prefabName, (Character character) => {
                        characters.characters.Add(character);
                        createdCount++;
                        if (createdCount == npcCount) {
                            Save(characters);
                        }
                    });
                }
            }
            Debug.Log("Creating  characters");
        }
Example #3
0
 private static void Save(Characters characters)
 {
     MemoryStream stream = new MemoryStream();
     GmSerializer serializer = new GmSerializer();
     serializer.Serialize(stream, characters);
     PlayerPrefs.SetString("npcs", Convert.ToBase64String(stream.ToArray()));
     Debug.Log(characters.characters.Count + " npc characters saved");
 }