Esempio n. 1
0
    /// <summary>
    /// Appelée lorsqu'une commande "CreateEntity" a été reçue du serveur.
    /// </summary>
    public void OnCreateEntityCommand(params object[] args)
    {
        if (args.Length > 0)
        {
            uint id;
            if (!(args[0] is uint))
            {
                if (args[0] is string)
                {
                    if (!uint.TryParse((string)args[0], out id))
                    {
                        BloodAndBileEngine.Debugger.Log("ERREUR : l'ID de l'entité à créer n'est pas un nombre !", UnityEngine.Color.red);
                        return;
                    }
                }
                else
                {
                    BloodAndBileEngine.Debugger.Log("ERREUR : l'ID de l'entité à créer doit être de type uint ou string !", UnityEngine.Color.red);
                    return;
                }
            }
            else
            {
                id = (uint)args[0];
            }

            // Si on arrive ici, alors id contient une valeur valide.
            BloodAndBileEngine.Entity entity = EntityFactory.BuildEntity(id, UnityEngine.Vector3.zero, UnityEngine.Quaternion.identity, 1.0f, 1.0f);
            if (entity != null)
            {
                EntityRenderer.OnEntityCreation(id);
            }
        }
        else
        {
            BloodAndBileEngine.Debugger.Log("ERREUR : La commande 'CreateEntity' prend un paramètre !", UnityEngine.Color.red);
        }
    }