Example #1
0
    private TailPiece Init(Player player, GridTransform leader)
    {
        this.leader = leader;

        gridTransform        = gameObject.AddComponent <GridTransform>();
        gridTransform.Events = new GridEventHandlers(OnCollision: OnGridCollision);
        gridTransform.Warp(leader.CurrentNode);

        tweener            = gameObject.AddComponent <LinearTweener>();
        tweener.autoTarget = () => gridTransform.Target;
        tweener.speed      = player.speed;

        GameObject.CreatePrimitive(PrimitiveType.Quad).transform.SetParent(transform);
        transform.position = leader.transform.position;
        return(this);
    }
Example #2
0
    private void Start()
    {
        childRight = MakeChild("childRight", Vector2.right);
        childUp    = MakeChild("childUp", Vector2.up);
        childOne   = MakeChild("childOne", Vector2.one);

        gridTransform = gameObject.GetComponent <GridTransform>();
        gridRight     = childRight.AddComponent <GridTransform>();
        gridUp        = childUp.AddComponent <GridTransform>();
        gridOne       = childOne.AddComponent <GridTransform>();

        gridTransforms = new GridTransform[] { gridTransform, gridRight, gridUp, gridOne };

        foreach (var gTransform in gridTransforms)
        {
            gTransform.Events = new GridEventHandlers(OnCollision: (x) => OnGridCollision(x));
        }

        tweener            = gameObject.AddComponent <LinearTweener>();
        tweener.speed      = 10f;
        tweener.autoTarget = () => gridTransform.Target;

        //gridTransform.Warp(GridSystem.GetNode((int)transform.position.x, (int)transform.position.y));

        CEventSystem.BroadcastEvent(EventChannel.gameState, EventSubChannel.none, new GameState.EnemySpawnEvent());

        animationParent = new GameObject("animationParent");
        animationParent.transform.SetParent(transform, false);
        animationParent.transform.localPosition = new Vector3(0.5f, -0.5f, 0f);

        animationChild      = GameObject.CreatePrimitive(PrimitiveType.Quad);
        animationChild.name = "AnimationChild";
        animationChild.transform.SetParent(animationParent.transform, false);
        animationChild.transform.localPosition = Vector2.up;
        animationChild.transform.localScale    = new Vector3(2f, 2f, 1f);

        Sprite[] sheet = Resources.LoadAll <Sprite>("Sprites/slime-sprite-sheet-FINAL-PNG");

        front = textureFromSprite(sheet[8]);
        right = textureFromSprite(sheet[5]);
        left  = textureFromSprite(sheet[2]);
        back  = textureFromSprite(sheet[11]);

        mat = new Material(Shader.Find("Unlit/Transparent"));
        mat.SetTexture("_MainTex", front);
        animationChild.GetComponent <MeshRenderer>().material = mat;
    }
Example #3
0
    private void Start()
    {
        //Add dependant components
        gridTransform = gameObject.GetComponent<GridTransform>();
        if(gridTransform == null)
        {
            gridTransform = gameObject.AddComponent<GridTransform>();

            //Warp the player to the grid
            var gridNode = GridSystem.GetNode(0, 0);
            gridTransform.Warp(gridNode);
        }

        Sprite[] sprites = Resources.LoadAll<Sprite>("Sprites/SnakeSprites");

        quad = GameObject.CreatePrimitive(PrimitiveType.Quad);
        quad.transform.SetParent(transform);
        quad.transform.localPosition = Vector3.zero;

        headMat = new Material(Shader.Find("Unlit/Transparent"));
        headMat.SetTexture("_MainTex", textureFromSprite(sprites[0]));
        quad.GetComponent<MeshRenderer>().material = headMat;

        bodyMat = new Material(Shader.Find("Unlit/Transparent"));
        bodyMat.SetTexture("_MainTex", textureFromSprite(sprites[1]));

        tailMat = new Material(Shader.Find("Unlit/Transparent"));
        tailMat.SetTexture("_MainTex", textureFromSprite(sprites[2]));

        keyboardController = gameObject.AddComponent<PlayerKeyboardController>();
        tweener = gameObject.AddComponent<LinearTweener>();
        //Set the auto target for the tweener
        tweener.autoTarget = () => gridTransform.Target;
        tweener.speed = speed;

        //Add camera system
        GameObject.Find("Main Camera").AddComponent<CameraControl>();

        Grow();
    }
Example #4
0
    private void Start()
    {
        //Add dependant components
        gridTransform = gameObject.GetComponent<GridTransform>();
        if(gridTransform == null)
        {
            gridTransform = gameObject.AddComponent<GridTransform>();

            //Warp the player to the grid
            var gridNode = GridSystem.GetNode(0, 0);
            gridTransform.Warp(gridNode);
        }

        GameObject quad = GameObject.CreatePrimitive(PrimitiveType.Quad);
        quad.transform.SetParent(transform);
        quad.transform.localPosition = Vector3.zero;

        keyboardController = gameObject.AddComponent<PlayerKeyboardController>();
        tweener = gameObject.AddComponent<LinearTweener>();
        //Set the auto target for the tweener
        tweener.autoTarget = () => gridTransform.Target;
        tweener.speed = speed;
    }
Example #5
0
 void Start()
 {
     a = new GameObject("Linear").AddComponent <LinearTweener>();
     b = new GameObject("Asymtotic").AddComponent <AsymtoticTweener>();
 }