Exemple #1
0
    private void OnTriggerEnter(Collider other)
    {
        if (!other.CompareTag("Player") && !other.CompareTag("Enemy"))
        {
            return;
        }

        if (other.gameObject.GetComponent <PowerUp>() == null)
        {
            ComponentUtil.CopyComponent(action, other.gameObject);
            if (logo != null)
            {
                other.GetComponent <PowerUp>().logo = logo;
            }
            //UnityEditorInternal.ComponentUtility.CopyComponent(action);
            //UnityEditorInternal.ComponentUtility.PasteComponentAsNew(other.gameObject);
        }
        GameObject.FindObjectOfType <Mendel>().updateValue(Int32.Parse(other.name), 30);

        /*
         * var info = other.gameObject.GetComponent<PlayerHealth>();
         * info.ModifyStats(healthRestoration,shield,bomb,shoe);
         */
        Destroy(gameObject);
    }
    void Start()
    {
        foreach (Transform child in transform)
        {
            foreach (Component component in gameObject.GetComponents(typeof(Component)))
            {
                if (ignore.Contains(component))
                {
                    continue;
                }

                ComponentUtil.CopyComponent(component, child.gameObject);
            }
        }
    }
Exemple #3
0
    public static void DecoratePrimitive(GameObject gameObject, PrimitiveType type, bool withCollider = true)
    {
        // add mesh
        var meshFilter = gameObject.AddComponent <MeshFilter>();

        meshFilter.sharedMesh = GetPrimitiveMesh(type);

        // add renderer
        //var renderer = gameObject.AddComponent<MeshRenderer>();

        // add material (if you want to...)
        //renderer.sharedMaterial = new Material(Shader.Find("Standard"));

        if (withCollider)
        {
            // add collider
            ComponentUtil.CopyComponent(GetPrimitiveCollider(type), gameObject);
        }
    }
Exemple #4
0
        /// <summary>
        /// Generates a new one player with certain position
        /// </summary>
        /// <param name="humanController"></param>
        /// <param name="trans"></param>
        private static void GeneratePlayer(bool humanController, GameObject trans, string name)
        {
            var player = Instantiate(Static_Player);

            player.name = name;
            if (humanController)
            {
                if (Static_HumansCuantity > 1)
                {
                    player.AddComponent <JoystickController>();
                }
                else
                {
                    player.AddComponent <PlayerController>();
                }
            }
            else
            {
                player.AddComponent <IAMovementController>();

                foreach (Component VARIABLE in aibehaviors)
                {
                    ComponentUtil.CopyComponent(VARIABLE, player);

                    //UnityEditorInternal.ComponentUtility.CopyComponent(VARIABLE);
                    //UnityEditorInternal.ComponentUtility.PasteComponentAsNew(player);
                }

                player.AddComponent <IAProbability>().setBehaviorsNumber(aibehaviors.Length);
                player.AddComponent <ScoreTable>();
                player.tag = "Enemy";
                geneticFather.AddNewBean(player);
            }


            player.transform.position = trans.transform.position + new Vector3(0, 3, 0);
            DefineDefaultSettings(player, humanController);
        }
Exemple #5
0
    public static void DecoratePrimitive(GameObject gameObject, PrimitiveType type, bool withCollider = true)
    {
        // add renderer
        //var renderer = gameObject.AddComponent<MeshRenderer>();

        // add material (if you want to...)
        //renderer.sharedMaterial = new Material(Shader.Find("Standard"));

        var tmp = GetOrCreatePrimitive(type);

        // add mesh
        var meshFilter = gameObject.AddComponent <MeshFilter>();

        meshFilter.sharedMesh = PrimitiveUtil.primitiveMeshes[type];


        if (withCollider)
        {
            // add collider
            ComponentUtil.CopyComponent(tmp.GetComponent <Collider>(), gameObject);
        }

        GameObject.DestroyImmediate(tmp);
    }