コード例 #1
0
    public void Init(Global.GameObjectTypes ObjectType)
    {
        objectType      = ObjectType;
        gameObject.name = ObjectType.ToString();

        setSprite();
    }
コード例 #2
0
    private GameObjectScript createObjectByType(Global.GameObjectTypes objectType)
    {
        Vector3 newObjectPosition = definePositionForCreatingObject(objectType);

        GameObject newObject = Object.Instantiate(ObjectPrefab, newObjectPosition, Quaternion.identity);

        GameObjectScript newObjectScript = newObject.GetComponentInChildren <GameObjectScript>();

        newObjectScript.Init(objectType);

        newObject.transform.SetParent(GameObjectHyerarchy.transform);

        return(newObjectScript);
    }
コード例 #3
0
    private Vector3 definePositionForCreatingObject(Global.GameObjectTypes objectType)
    {
        //TODO

        /*
         * Написать ПП для определения наилучшего респа объектов. Объект появляется в наиболее свободной точке.
         * Игрок имеет наивысший показатель излучения.
         * Чем больше объект, тем больше он имеет показатель излучения и наоборот.
         * ПП должно быть отдельным объектом в глобале.
         * Инстанциация происходит в глобале.
         * Обновление ПП состояния происходит при каждом добавлении или удалении объекта со сцены.
         * Настройки ПП задаются в глобале.
         * В будущем возможно сделать уклонение объектов от пуль.
         * Тарелки будут использовать ПП для нахождения оптимального пути к игроку и уклонении от него.
         */


        return(Vector3.zero);
    }
コード例 #4
0
 public void addObjectToLevelMap(Global.GameObjectTypes gameObjectType, int count)
 {
     LevelObjectsMap.Add(gameObjectType, count);
 }