Inheritance: Defender
Ejemplo n.º 1
0
    public override void OnUpdate(Golem entity)
    {
        float value = 0f;

        entity.Read(Variable, ref value);
        entity.Write(Variable, value + Time.smoothDeltaTime);
    }
	// Use this for initialization
	void Start () {
		animator = GetComponent<Animator> ();
		golem = GetComponentInParent<Golem> ();
		attack = golem.GetComponent<BasicMelee> ();
		attackOne = "Attack1";
		attackTwo = "Attack2";
	}
Ejemplo n.º 3
0
    private void Start()
    {
        switch (monster)
        {
        case MONSTER.OBGOBLIN:
            obGoblin = gameObject.GetComponentInParent <OBGoblin>();
            break;

        case MONSTER.NOBGOBLIN:
            nGoblin = gameObject.GetComponentInParent <Goblin>();
            break;

        case MONSTER.SHAMAN:
            shaman = gameObject.GetComponentInParent <Shaman>();
            break;

        case MONSTER.GOLEM:
            golem = gameObject.GetComponentInParent <Golem>();
            break;

        case MONSTER.SPAWN:
            spawnGoblin = gameObject.GetComponentInParent <SlaveGoblin>();
            break;

        case MONSTER.TRAINING:
            trainingShaman = gameObject.GetComponentInParent <ShamanT>();
            break;
        }
    }
Ejemplo n.º 4
0
 public override void OnUpdate(Golem entity)
 {
     if (Time.time > _exitTime)
     {
         entity.SetTrigger(Trigger);
     }
 }
Ejemplo n.º 5
0
    public void SpawnGolem(int golemID)
    {
        dbconn.Open();
        dbcmd             = dbconn.CreateCommand();
        sqlQuery          = "SELECT * FROM Monster where monsID = " + golemID;
        dbcmd.CommandText = sqlQuery;
        reader            = dbcmd.ExecuteReader();
        reader.Read();

        GameObject tempGolem = Instantiate(Resources.Load("Monster/" + reader.GetString(1)), rightEndPosition.position, Quaternion.identity) as GameObject;
        Golem      golemInfo = tempGolem.GetComponent <Golem>();

        golemInfo.name            = reader.GetString(1);
        golemInfo.Golem_MoveSpeed = reader.GetFloat(2);
        //golemInfo.sp = reader.GetFloat(2);
        golemInfo.Golem_MaxHealth     = reader.GetInt16(5);
        golemInfo.Golem_CurrentHealth = reader.GetInt16(4);
        golemInfo.Golem_Hit_Threshold = reader.GetInt16(15);
        //tempGolem.GetComponent<Golem>().GetType = UnitType.GOLEM;
        golemInfo.Golem_Defend_Duration = reader.GetFloat(17);
        golemInfo.Golem_Sight_Range     = reader.GetFloat(18);
        golemInfo.Golem_Stun_Duration   = reader.GetFloat(19);
        dbconn.Close();
        CombatSceneManager.instance.AddGolemToList(tempGolem);
    }
Ejemplo n.º 6
0
 // Update is called once per frame
 void Update()
 {
     if (Trap.transform.position.x - Player.transform.position.x < 13)
     {
         Trap.SetActive(true);
     }
     if (Zombie1.transform.position.x - Player.transform.position.x < 13)
     {
         Zombie1.SetActive(true);
     }
     if (Zombie2.transform.position.x - Player.transform.position.x < 13)
     {
         Zombie2.SetActive(true);
     }
     if (Spikes.transform.position.x - Player.transform.position.x < 13)
     {
         Spikes.SetActive(true);
     }
     if (Vampire1.transform.position.x - Player.transform.position.x < 13)
     {
         Vampire1.SetActive(true);
     }
     if (Vampire2.transform.position.x - Player.transform.position.x < 13)
     {
         Vampire2.SetActive(true);
     }
     if (Golem.transform.position.x - Player.transform.position.x < 13)
     {
         Golem.SetActive(true);
     }
 }
Ejemplo n.º 7
0
 public CardMessage(Golem g)
 {
     success     = 1;
     headMessage = new HeadMessage(g.Head);
     bodyMessage = new BodyMessage(g.Chest);
     legMessage  = new LegMessage(g.Legs);
 }
Ejemplo n.º 8
0
 public void SetupGolemInfo(Golem enemy)
 {
     Debug.Log("Setup value" + enemy.Golem_CurrentHealth);
     mainEnemy         = enemy;
     HPSlider.maxValue = enemy.Golem_MaxHealth;
     HPSlider.value    = enemy.Golem_CurrentHealth;
 }
Ejemplo n.º 9
0
    public void generateGolem()
    {
        //if one of the cards is empty
        if (Head.card.IsNull || Chest.card.IsNull || Legs.card.IsNull || Shelf.Instance.IsGolemReady())
        {
            audio.PlayOneShot(errorClip);
            return;
        }

        Golem golem = new Golem(Head.card, Chest.card, Legs.card);

        Shelf.Instance.LoadGolem(golem);

        if (Head.card.graphictype == Constants.H_SNOWHEAD &&
            Chest.card.graphictype == Constants.C_SNOWBODY &&
            Legs.card.graphictype == Constants.LS_SNOWLEG)
        {
            audio.PlayOneShot(slotMachinecClip);
        }
        else
        {
            audio.PlayOneShot(buildClip);
        }


        Head.card.part  = BodyPart.None;
        Chest.card.part = BodyPart.None;
        Legs.card.part  = BodyPart.None;

        Head.UpdateCard();
        Chest.UpdateCard();
        Legs.UpdateCard();
    }
Ejemplo n.º 10
0
    public bool[] isInCoolTime = { false, false, false, false, false, false };   // 쿨타임중에는 t

    void Start()
    {
        golemScript = GameObject.Find("Golem").GetComponent <Golem>();

        for (int i = 0; i < 6; i++)
        {
            if (gameObject.name != "GameManager")
            {
                break;
            }

            if (i < 3)
            {
                coolTimeScript[i] = GameObject.Find("SkillBtn" + i.ToString()).GetComponent <ButtonCoolTime>();
                // 밑의줄은 버튼 클릭식으로 할 때는 주석처리 할 것
                GameObject.Find("SkillBtn" + i.ToString()).GetComponent <Button>().enabled = false;
            }
            else
            {
                coolTimeScript[i] = GameObject.Find("SpawnBtn" + (i - 3).ToString()).GetComponent <ButtonCoolTime>();
                // 밑의줄은 버튼 클릭식으로 할 때는 주석처리 할 것
                GameObject.Find("SpawnBtn" + (i - 3).ToString()).GetComponent <Button>().enabled = false;
            }
        }
    }
Ejemplo n.º 11
0
 //private Enemy defaultEnemy;
 //Start function sets enemytype for the script so that the right variables are changed
 void Start()
 {
     if (enemyName == "Kamikaze")
     {
         flyingKam = new KamikazeEnemy(kamikazeMaxHP, (int)kamikazeMovementSpeed, kamikazeDefense, gameObject, (int)kamikazeIQ);
         Enemy.enemyList.Add(flyingKam);
         type          = EnemyType.FlyingKamikaze;
         defaultEnemy  = flyingKam;
         defaultBroken = brokenKamikaze;
         Debug.Log("Instantiated flying kamikaze");
     }
     else if (enemyName == "Golem")
     {
         golem = new Golem(golemMaxHp, (int)golemMovementSpeed, golemDefense, gameObject, golemProjectileSpeed, golemChargeSpeed, golemKnockbackDmg, golemGroundPoundDmg, golemProjectileDmg);
         Enemy.enemyList.Add(golem);
         type          = EnemyType.Brawler;
         defaultEnemy  = golem;
         defaultBroken = brokenGolem;
         Debug.Log("Instantiated golem");
     }
     else if (enemyName == "IRTower")
     {
         IREnemy = new IrradiatedEnemies(IRMaxHp, (int)IRMovementSpeed, IRDefense, gameObject, IRRadiusAffect, IRSpeedBuff, IRMaxHpBuff, IRAttackBuff, IRPlayerAttackDebuff, IRPlayerSpeedDebuff);
         Enemy.enemyList.Add(IREnemy);
         type          = EnemyType.IrradiatedEnemy;
         defaultEnemy  = IREnemy;
         defaultBroken = null;
         Debug.Log("Instantiated IR enemy");
     }
     else if (enemyName == "Shly")
     {
         shly = new ShlyEnemy(shlyMaxHp, (int)shlyMovementSpeed, shlyDefense, (int)aggregateNumberofShlies, bullChargeSpeed, speedDebuffProportion, this.gameObject, pelletDamage, bullChargeDamage);
         Enemy.enemyList.Add(shly);
         ShlyEnemy.shlyList.Add(shly);
         type          = EnemyType.Shly;
         defaultEnemy  = shly;
         defaultBroken = brokenShly;
         Debug.Log("Instantiated shly object");
     }
     else if (enemyName == "Shrab")
     {
         shrab = new Shrab(shrabMaxHp, (int)shrabMovementSpeed, shrabDefense, gameObject, shrabPincerDmg, shrabEruptionRadius, aggregateNumberofShrabs);
         Enemy.enemyList.Add(shrab);
         Shrab.shrabList.Add(shrab);
         type          = EnemyType.Shrab;
         defaultEnemy  = shrab;
         defaultBroken = brokenShrab;
         Debug.Log("Instantiated shrab object");
     }
     else if (enemyName == "Starship")
     {
         ship = new Starship(starshipMaxHp, (int)starshipMovementSpeed, starshipDefense, gameObject, IRHealthSpawnStart, bombDamage, bombRadius, rayDamage, rayWidth, turretDamage);
         Enemy.enemyList.Add(ship);
         type          = EnemyType.Starship;
         defaultEnemy  = ship;
         defaultBroken = null;
     }
     //Change values in Enemy Behavior scripts to align with these values
 }
Ejemplo n.º 12
0
 public override void Update(Golem entity, bool dirty, ref bool running)
 {
     if (dirty)
     {
         running = entity.Get <bool>(Enabled);
     }
     entity.Set(Output, Mathf.Sin(Frequency * Time.time) * Amplitude);
 }
Ejemplo n.º 13
0
 public bool EnterGolem()
 {
     _currentGolem  = _sceneGolem;
     _rb.useGravity = false;
     GetComponent <Collider>().enabled = false;
     _currentGolem.Enter();
     return(true);
 }
Ejemplo n.º 14
0
    public void ExitGolem()
    {
        GetComponent <Collider>().enabled = true;
        _rb.useGravity = true;
        _currentGolem.Exit();
        _currentGolem = null;

        VirtualCameraManager.instance.ToggleVCam(_CMVirtualCamera);
    }
 //OnStateEnter is called when a transition starts and the state machine starts to evaluate this state
 override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     _gameObject         = animator.gameObject;
     _golem              = _gameObject.GetComponent <Golem>();
     myRigidbody2D       = _gameObject.GetComponent <Rigidbody2D>();
     myAnimator          = _gameObject.GetComponent <Animator>();
     myCapsuleCollider2D = _gameObject.GetComponent <CapsuleCollider2D>();
     _player             = FindObjectOfType <PlayerController>();
 }
Ejemplo n.º 16
0
    public Golem PopGolem()
    {
        audio.Play();
        moving.enabled = true;

        Golem tmp = golem;

        return(tmp);
    }
Ejemplo n.º 17
0
    public override void Update(Golem entity, bool dirty, ref bool running)
    {
        float value = 0f;

        if (entity.Read(Variable, ref value))
        {
            entity.Set(Output, value);
        }
    }
Ejemplo n.º 18
0
    public override void Update(Golem golem, bool dirty, ref bool running)
    {
        var position = Transform.position;

        golem.TryGet(X, ref position.x);
        golem.TryGet(Y, ref position.y);
        golem.TryGet(Z, ref position.z);
        Transform.position = position;
    }
Ejemplo n.º 19
0
 void OnTriggerEnter(Collider collid)
 {
     //Debug.Log("sword hit:"+collid.name);
     if (collid.gameObject.tag == "Monster")
     {
         Debug.Log("sword hit");
         Golem golem = collid.gameObject.GetComponent <Golem>();
         golem.Damage(20);
     }
 }
Ejemplo n.º 20
0
 public override void Update(Golem entity, bool dirty, ref bool running)
 {
     if (dirty)
     {
         _startTime = Time.time;
         _endTime   = _startTime + Duration;
     }
     entity.Set(Output, Mathf.InverseLerp(_startTime, _endTime, Time.time));
     running = Time.time < _endTime;
 }
Ejemplo n.º 21
0
    protected virtual void OnTriggerEnter2D(Collider2D other)
    {
        Golem golem = GameObject.FindObjectOfType <Golem>();

        if (other.CompareTag(Constants.PLAYER_TAG))
        {
            Player player = other.GetComponent <Player>();
            player.applyDamage(Constants.GOLEM_PROJECTILE_DAMAGE);
            Destroy(this.gameObject);
        }
    }
Ejemplo n.º 22
0
    public void EmptyGolem()
    {
        Head.card.part  = BodyPart.None;
        Chest.card.part = BodyPart.None;
        Legs.card.part  = BodyPart.None;

        Head.UpdateCard();
        Chest.UpdateCard();
        Legs.UpdateCard();
        golem = null;
    }
Ejemplo n.º 23
0
 public override void Update(Golem entity, bool dirty, ref bool running)
 {
     if (dirty)
     {
         current        = entity.Get <float>(Input);
         deltaPerSecond = current / Duration;
     }
     else
     {
         current = Mathf.MoveTowards(current, 0f, deltaPerSecond * Time.smoothDeltaTime);
     }
     running = current != 0f;
 }
Ejemplo n.º 24
0
    public void LoadGolem(Golem golem)
    {
        Debug.Log("golem ready");
        Debug.Assert(golem != null);
        this.golem = golem;

        Head.card  = golem.Head;
        Chest.card = golem.Chest;
        Legs.card  = golem.Legs;

        Head.UpdateCard();
        Chest.UpdateCard();
        Legs.UpdateCard();
    }
Ejemplo n.º 25
0
    void OnRequestGolem(NetworkMessage netMsg)
    {
        Debug.Log("Golem Request Received");

        if (Shelf.Instance.IsGolemReady())
        {
            Golem  g   = Shelf.Instance.PopGolem();
            string msg = JsonUtility.ToJson(new CardMessage(g));
            netMsg.conn.Send(REQ_RESPONSE, new StringMessage(msg));
        }
        else
        {
            string msg = JsonUtility.ToJson(new CardMessage());
            netMsg.conn.Send(REQ_RESPONSE, new StringMessage(msg));
        }
    }
Ejemplo n.º 26
0
 // Start is called before the first frame update
 void Start()
 {
     pauseCanvas = GameObject.Find("PauseCanvas");
     pauseCanvas.SetActive(false);
     deathCanvas = GameObject.Find("DeathCanvas");
     deathCanvas.SetActive(false);
     inputManagerM = new InputManagerMouse();
     inputManagerC = new InputManagerController();
     p1_hp         = GameObject.Find("P1_HPBar").GetComponent <Slider>();
     p2_hp         = GameObject.Find("P2_HPBar").GetComponent <Slider>();
     p1_tpcd       = GameObject.Find("P1_TPCD").GetComponent <Image>();
     p2_tpcd       = GameObject.Find("P2_TPCD").GetComponent <Image>();
     playersAlive  = 2;
     golemA        = GameObject.FindGameObjectsWithTag("Enemy");
     golem         = golemA[0].GetComponent <Golem>();
 }
    public void Setup(Golem GolemParent)
    {
        Commander   = GolemParent;
        ShootTarget = Commander.GetTarget();

        MoveSpeed = MoveSpeed * Time.deltaTime;

        Anim = GetComponent <Animator>();
        SprList.Add(GetComponentsInChildren <SpriteRenderer>()[0].gameObject);
        SprList.Add(GetComponentsInChildren <SpriteRenderer>()[1].gameObject);
        //MainSprite = GetComponentsInChildren<SpriteRenderer>()[0].gameObject;
        //SecondarySprite = GetComponentsInChildren<SpriteRenderer>()[1].gameObject;

        OffsetAmount = transform.position;


        Debug.Log(transform.name + " : Has been set up");
    }
Ejemplo n.º 28
0
        public void CreateCharacter(string btnName)
        {
            //Tipo de personaje que vamos a crear
            CharacterType type = StringToType(btnName);
            // Genero del personaje que vamos a crear
            GenderType gender = GetGenderProbability();

            //Seteamos la base del personaje
            SetCharacter(gender);

            switch (type)
            {
            case CharacterType.Ninja:
                Ninja ninja = selectedBase.AddComponent <Ninja>();
                ninja             = new Ninja(gender, NinjaColor, selectedSurface, selectedBase.GetComponent <Animator>());
                selectedCharacter = ninja;
                break;

            case CharacterType.Golem:
                Golem golem = selectedBase.AddComponent <Golem>();
                golem             = new Golem(gender, GolemColor, selectedSurface, selectedBase.GetComponent <Animator>());
                selectedCharacter = golem;
                break;

            case CharacterType.Zombie:
                Zombie zombie = selectedBase.AddComponent <Zombie>();
                zombie            = new Zombie(gender, ZombieColor, selectedSurface, selectedBase.GetComponent <Animator>());
                selectedCharacter = zombie;
                break;

            case CharacterType.Archer:
                Archer archer = selectedBase.AddComponent <Archer>();
                archer            = new Archer(gender, ArcherColor, selectedSurface, selectedBase.GetComponent <Animator>());
                selectedCharacter = archer;
                break;

            case CharacterType.Nymph:
                Nymph nymph = selectedBase.AddComponent <Nymph>();
                nymph             = new Nymph(gender, NymphColor, selectedSurface, selectedBase.GetComponent <Animator>());
                selectedCharacter = nymph;
                break;
            }
        }
Ejemplo n.º 29
0
 // TODO: This should be an "end of wave complete" bonus thing
 public void OnWaveComplete()
 {
     foreach (Gate gate in Gates)
     {
         // TODO: Spawn loot box or something based on value of gate
         int value = gate.StoredValue;
         gate.QueueFree();
     }
     Gates = new List <Gate>();
     if (CurrentWave < WaveDefinitions.Count - 1)
     {
         CreateNewGates(++CurrentWave);
     }
     else
     {
         Golem boss = new Golem();
         boss.Initialize((_floor.areaStart + _floor.areaEnd) / 2);
         GetTree().Root.AddChild(boss);
     }
 }
Ejemplo n.º 30
0
    void Shoot()
    {
        RaycastHit hitInfo;

        if (Physics.Raycast(can.transform.position, can.transform.forward, out hitInfo, range))
        {
            Debug.Log(hitInfo.transform.gameObject.name);

            Golem target = hitInfo.transform.gameObject.GetComponent <Golem>();

            if (target != null)
            {
                target.TakeDamage(damage);
            }

            if (hitInfo.rigidbody != null)
            {
                hitInfo.rigidbody.AddForce(can.transform.TransformDirection(Vector3.forward) * hitForce, ForceMode.Impulse);
            }
        }
    }
Ejemplo n.º 31
0
    private void Start()
    {
        int golemCount = Random.Range(1, 3);

        for (int i = 0; i < golemCount; i++)
        {
            GameObject newGolem = Instantiate(PrefabManager.Instance.golem, transform);

            /*object[] initData = new object[3];
             * initData[0] = i;
             * initData[1] = transform.position.x;
             * initData[2] = transform.position.y;
             *
             * GameObject newGolem = PhotonNetwork.InstantiateRoomObject(PrefabManager.Instance.golem.name, transform.position, Quaternion.identity, 0, initData);
             */
            //newGolem.transform.SetParent(transform);

            Golem g = newGolem.transform.GetChild(1).GetComponent <Golem>();
            g.setGolemAttributes(i, Util.getCorners(transform.position));
        }
    }