Inheritance: MonoBehaviour
	void onEnemyStatsChange( EnemyStats stats, EnemyBase._EnemyState state )
	{
		scaleToScale = transform.localScale;
		scaleToScale.x = ORIGINAL_SCALE.x * ( stats.health / 100f );
		scaleToScale.x = ( scaleToScale.x > 0 ) ? scaleToScale.x : 0f;
		
		Color tweenToColor;
		
		if( stats.health > 50 )
			tweenToColor = ( ( FULL_HEALTH_COLOR - MIDDLE_COLOR ) * ( ( stats.health -50 ) / 50f ) ) + MIDDLE_COLOR;
		else
			tweenToColor = ( ( MIDDLE_COLOR - FULL_DEAD_COLOR ) * ( stats.health / 50f ) ) + FULL_DEAD_COLOR;
		
		TweenColor.Begin( transform.gameObject, 0.15f, tweenToColor );
		
		iTween.Stop(gameObject);
		iTween.ScaleTo( gameObject, iTween.Hash(
			"scale", scaleToScale,
			"islocal", true,
			"time", 0.15f,
			"easetype", iTween.EaseType.easeOutExpo
			)
		);
		
		if( stats.health == 0 && state == EnemyBase._EnemyState.Dead )
		{
			thisSprite.enabled = false;
			healthBarBG.enabled = false;
		}
	}
    public virtual void Awake()
    {
        agent = gameObject.GetComponent<NavMeshAgent>();

        //Patrol instance START
        points = new Vector3[patrolWaypoints.Length];

        for(int i=0; i<patrolWaypoints.Length; i++ ){
            if(!moveYAxis){
                points[i] = new Vector3(patrolWaypoints[i].transform.position.x, transform.position.y, patrolWaypoints[i].transform.position.z);
            }else{
                points[i] = new Vector3(patrolWaypoints[i].transform.position.x, patrolWaypoints[i].transform.position.y, patrolWaypoints[i].transform.position.z);
            }
        }

        if(points.Length == 1){
            vectorIndex = 0;
        }
        //Patrol instance END

        enemyStats = GetComponent<EnemyStats>();
        enemyAttack = GetComponent<Attack>();
        enemyAttack.setMoveYAxis(moveYAxis);

        if(enemyStats.spriteObject != null){
            enemyAnimator = enemyStats.spriteObject.GetComponent<Animator>();
            hashAnimator = enemyStats.spriteObject.GetComponent<HashAnimatorUnit>();
        }
    }
Exemple #3
0
    // Defensive, melee (suit le joueur, quand faible fuit)
    // Defensive, range (reste à porter maximum de ses attaques, quand faible, fuit, si player rapproche enemy s'enfuit)

    public Defensive(Transform enemyTransform, Transform playerTransform, NavMeshAgent navAgent, EnemyStats enemyStats)
    {
        this.enemyTransformHead = enemyTransform;
        this.playerTransform = playerTransform;
        this.navAgent = navAgent;
        this.enemyStats = enemyStats;
    }
Exemple #4
0
	void onUIUpdate( Gun gun, PlayerController._GameState state, GameObject clicked, EnemyStats stats )
	{	
		if( clicked == gameObject )
		{			
			if( onPause != null )
				onPause();
		}
		
		/*if( state == PlayerController._GameState.Reload )
		{	
			iTween.MoveTo( PARENT, iTween.Hash(
				"y", TWEEN_POS,
				"islocal", true,
				"time", 0.4f,
				"easetype", iTween.EaseType.easeOutBack
				)
			);
		}
		if( state == PlayerController._GameState.Active || state == PlayerController._GameState.IsReloading )
		{
			iTween.MoveTo( PARENT, iTween.Hash(
				"y", RESET_POS,
				"islocal", true,
				"time", 0.4f,
				"easetype", iTween.EaseType.easeInBack
				)
			);
		}*/
	}
	void onUIUpdate( Gun gun, PlayerController._GameState state, GameObject clicked, EnemyStats stats )
	{
		if( clicked == gameObject && state != PlayerController._GameState.None )
		{
			if( Application.platform == RuntimePlatform.IPhonePlayer )
				ChartBoostBinding.trackEvent( "Health Pack Use" );
			
			switch( name )
			{
			case "HPackTiny":
				DBAccess.instance.userPrefs.useHealthPack(0);
				tweenScale();
				break;
			case "HPackSmall":
				DBAccess.instance.userPrefs.useHealthPack(1);
				tweenScale();
				break;
			case "HPackMedium":
				DBAccess.instance.userPrefs.useHealthPack(2);
				tweenScale();
				break;
			case "HPackLarge":
				DBAccess.instance.userPrefs.useHealthPack(3);
				tweenScale();
				break;
			case "HPackHuge":
				DBAccess.instance.userPrefs.useHealthPack(4);
				tweenScale();
				break;
			default:
				break;
			}
		}
	}
 void Start()
 {
     cargoShip = GameObject.Find("Cargo ship");
     cargoFlight = cargoShip.GetComponent<CargoShipAI>();
     flight = gameObject.GetComponent<BoardingFlight>();
     stats = gameObject.GetComponent<EnemyStats>();
 }
	void onUIUpdate( Gun gun, PlayerController._GameState state, GameObject clicked, EnemyStats stats )
	{
		if( state == PlayerController._GameState.Results && stats != null && canPress )
		{
			canPress = false;
			
			expLabel.text = "0";
			goldLabel.text = DBAccess.instance.userPrefs.Gold.ToString();
			
			iTween.MoveTo( windowPanel.gameObject, iTween.Hash(
				"position", RESET_POS,
				"islocal", true,
				"time", 0.4f,
				"delay", 2f,
				"easetype", iTween.EaseType.easeOutExpo
				)
			);
			
			float expEarned = ( ( (float)stats.level / (float)DBAccess.instance.userPrefs.Level ) * (float)DBAccess.instance.userPrefs.Level ) * 3;
			float goldEarned = expEarned / 2f;
			
			
			
			iTween.ValueTo( gameObject, iTween.Hash(
				"from", 0,
				"to", expEarned,
				"delay", 3f,
				"time", 1f,
				"onupdatetarget", gameObject,
				"onupdate", "expValueTo",
				"easetype", iTween.EaseType.easeOutExpo
				)
			);
			
			iTween.ValueTo( gameObject, iTween.Hash(
				"from", DBAccess.instance.userPrefs.Gold,
				"to", goldEarned,
				"delay", 3f,
				"time", 1f,
				"onupdatetarget", gameObject,
				"onupdate", "goldValueTo",
				"oncompletetarget", gameObject,
				"oncomplete", "setExpAndGold",
				"oncompleteparams", expEarned,
				"easetype", iTween.EaseType.easeOutExpo
				)
			);
		}
		else if( state == PlayerController._GameState.Dead )
			StartCoroutine( deathRoutine(stats) );
		
		if( clicked != null && state != PlayerController._GameState.Dead ) 
		{
			if( clicked == gameObject )
			{
				moveGridTo(curPos+1);
			}
		}
	}
Exemple #8
0
    public virtual void Start()
    {
        stats = new EnemyStats(100, 100, 10, 5, StatusState.NORMAL, ENEMY_STATE_MACHINE.IDLE);

        GameManager.Instance.player.playerAbilities.onPoisonGlobal  += OnPoisonRecieve;
        GameManager.Instance.player.playerAbilities.onFreezedGlobal += OnFreezedRecieve;
        GameManager.Instance.player.playerAbilities.onBurnedGlobal  += OnBurnedRecieve;
    }
Exemple #9
0
 virtual public void Awake()
 {
     RuntimeStats = Instantiate(Stats) as EnemyStats;
     if (hasSpecialAbility)
     {
         RestartSpecialAbilityCooldown();
     }
 }
 void OnTriggerEnter2D(Collider2D other)
 {
     if (other.gameObject.CompareTag("Enemy"))
     {
         EnemyStats enemy = other.GetComponent <EnemyStats>();
         enemy.TakeDamage(damage);
     }
 }
 private void Start()
 {
     rb                = transform.GetComponent <Rigidbody2D>();
     animator          = gameObject.GetComponent <Animator>();
     enemy             = gameObject.GetComponent <EnemyStats>();
     character         = levelManager.GetCharacter();
     capsuleCollider2d = gameObject.GetComponentInChildren <CapsuleCollider2D>();
 }
    void Update()
    {
        enemyStats = gameObject.GetComponentInParent(typeof(EnemyStats)) as EnemyStats;

        Health    = enemyStats.Health;
        maxHealth = enemyStats.maxHealth;
        SetSize(Health, maxHealth);
    }
Exemple #13
0
 private void Awake()
 {
     FindObjectOfType <AudioManager>().Play("MissileLaunch", 0.7f);
     target = FindObjectOfType <MovementController>().transform;
     stats  = GetComponent <EnemyStats>();
     rb     = GetComponent <Rigidbody>();
     ps     = blastEffect.GetComponent <ParticleSystem>();
 }
Exemple #14
0
 void OnTriggerExit(Collider hit)
 {
     if (hit.gameObject.tag == "Enemy")
     {
         EnemyStats temp = hit.gameObject.GetComponent <EnemyStats>();
         targets.Remove(temp);
     }
 }
 void Start()
 {
     stats = hitter.GetComponent <EnemyStats>();
     if (stats != null)
     {
         damage = stats.myDamage;
     }
 }
Exemple #16
0
    float timeBetweenAttacks;                                                               // Tiempo en segundos entre cada ataque.

    void Awake()
    {
        enemyMovement = GetComponent <EnemyMovement>();                                     // Componente del movimiento del enemigo.
        enemyHealth   = GetComponent <EnemyHealth>();                                       // Componente de la salud del enemigo.
        enemyStats    = GetComponent <EnemyStats>();                                        // Componente de las estadísticas del enemigo.
        anim          = GetComponent <Animator>();                                          // Componente de la animación.
        enemyAudio    = GetComponent <AudioSource>();                                       // Componente del audio.
    }
    public void EnemyKilled(EnemyStats enemyStats)
    {
        // Notify the persistent currency manager of an enemy kill.
        int persistentCurrencyGiven = persistentCurrencyManager.EnemyKilled(enemyStats);

        // Notify the session currency manager of an enemy kill.
        int sessionCurrencyGiven = sessionCurrencyManager.EnemyKilled(enemyStats);
    }
 public new void Start()
 {
     level   = EnemyHeadquarters.instance.currentEnemyLevel;
     myStats = new EnemyStats(level, EnemyType.Melee);
     base.Start();
     attackBox.SetActive(false);
     attackBoxScript.stats = myStats;
 }
Exemple #19
0
    public void UpdateTarget()
    {
        if(lookAtGameObject.target.tag != Tags.player){

            enemyStats = lookAtGameObject.target.GetComponent<EnemyStats>();

        }
    }
 void Start()
 {
     MyStats      = this.gameObject.GetComponent <EnemyStats>();
     CountDown    = MyStats.AttackRate;
     CurrentSpeed = Speed;
     lastPosition = transform.position;
     Target       = waypoint.points[0];
 }
Exemple #21
0
 public static bool condition_low_health(float i1, EnemyStats enemy, float probability)
 {
     if (((float)enemy.hp / (float)enemy.hp_max) <= i1)
     {
         return(Random.RandomRange(0f, 1f) <= probability);
     }
     return(false);
 }
Exemple #22
0
 void OnEnable()
 {
     maxHealth    = enemyData.health;
     currentStats = Instantiate(enemyData);
     healthSlider = FindObjectOfType <UIHealthBars>().GetHealthBar();
     currentStats.CalculateExperienceGiven();
     // FindObjectOfType<FightController>().enemies.Add(this);
 }
Exemple #23
0
 void Start()
 {
     box      = GetComponent <BoxCollider2D>();
     statusP  = GetComponentInParent <PlayerStats>();
     statusE  = GetComponentInParent <EnemyStats>();
     artifact = GetComponentInParent <Artifact>();
     anim     = GetComponentInParent <CharacterAnimationController>();
 }
Exemple #24
0
 void Start()
 {
     stats = GetComponent<EnemyStats>();
     hitCollider = GetComponent<Collider2D>();
     stats.acquiredSkillsList.Add(SkillsDatabase.skillsDatabase.skills[0]);
     causingDamage = false;
     damagePerSecond = stats.maximumDamage;
 }
 //initialise scripts into variables
 void Start()
 {
     es   = GetComponent <EnemyStats> ();
     eod  = GetComponent <EffectOnDeath> ();
     an   = GetComponent <Animator> ();
     shot = GetComponentInChildren <ParticleSystem> ();
     tc   = GameObject.FindGameObjectWithTag("GameController").GetComponent <TextController> ();
 }
 // Use this for initialization
 void Start()
 {
     currentHealthWidth = healthbarWidth;
     parent             = transform.parent.gameObject;
     stats         = parent.GetComponent <EnemyStats>();
     maxHealth     = stats.getHealth();
     currentHealth = maxHealth;
 }
Exemple #27
0
 void Start()
 {
     player  = GameObject.FindGameObjectWithTag("Player");
     bodyCol = GetComponent <CapsuleCollider>();
     col     = GetComponent <SphereCollider>();
     alert   = GetComponent <EnemyAlert>();
     stats   = GetComponent <EnemyStats>();
 }
Exemple #28
0
    // Start is called before the first frame update


    void Start()
    {
        enemyMovement = GetComponent <EnemyMovement>();
        enemyStats    = GetComponent <EnemyStats>();
        nextAttack    = 0.1f;
        thePlayer     = GameObject.Find("2dHero");
        firstAttack   = true;
    }
Exemple #29
0
 // Use this for initialization
 void Start()
 {
     healthBar = Resources.Load("Textures/HealthBars/HealthBar") as Texture2D;
     skin = Resources.Load("Skins/HealthBars") as GUISkin;
     stats = GetComponent<EnemyStats>();
     maxHP = stats.getHealth();
     box = new GUIStyle(skin.box);
 }
 // Use this for initialization
 void Start()
 {
     player      = GameObject.Find("Player");
     anim        = GetComponent <Animator> ();
     estats      = GetComponent <EnemyStats> ();
     attackCD    = 1.0f;
     attackStart = 0.0f;
 }
Exemple #31
0
 public void Init(EnemyStats stats)
 {
     this.stats = stats;
     manager    = new HealthManager(stats.MaxHealth, 0, stats.MaxHealth, 0);
     GetComponent <Weapon>().stats = stats.weapons[0];
     manager.OnDeath.AddListener(OnDeathEvent);
     //Code to generate enemy from Enemystats here
 }
    //Enemy 스탯 업데이트
    public void EnemyStatsUpdate(UILabel label_Name, UIInput input_Hp, UIInput input_Def, UIInput input_Speed)
    {
        int no = (int)Enum.Parse(typeof(EnemyKind), label_Name.text);

        dicEnemyStats[no] = new EnemyStats(float.Parse(input_Hp.value),
                                           float.Parse(input_Def.value),
                                           float.Parse(input_Speed.value));
    }
    private void SpawnEnemy()
    {
        EnemyStats newEnemyStats = enemyTypes[Random.Range(0, enemyTypes.Length)];

        GameObject newEnemy = Instantiate(enemyPrefab, new Vector2(vikingPosition.x + xDifferential, -2.81f), Quaternion.identity);

        newEnemy.GetComponent <Enemy>().SetStats(newEnemyStats);
    }
Exemple #34
0
 public override InitiatorCollisionResult GetResult(EnemyStats initator, EnemyStats other, float magnitude)
 {
     if (magnitude > Consts.minMagnitudeValueToInteract)
     {
         return(InitiatorCollisionResult.otherDestroyed);
     }
     return(InitiatorCollisionResult.noAction);
 }
Exemple #35
0
 void Start()
 {
     player     = GameObject.FindGameObjectWithTag("Player");
     agent      = GetComponent <NavMeshAgent>();
     anim       = GetComponent <Animator>();
     enemyStats = GetComponent <EnemyStats>();
     MagicHit   = false;
 }
Exemple #36
0
 void Start()
 {
     player           = GameObject.FindGameObjectWithTag(Constants.PLAYER_TAG);
     target           = player.transform;
     agent            = GetComponentInParent <NavMeshAgent>();
     stats            = GetComponent <EnemyStats>();
     stats.dealDamage = 10;
 }
Exemple #37
0
    void Start()
    {
        enemy     = GetComponent <EnemyStats>();
        enemyAnim = GetComponent <Animation>();

        // 시작 시 첫번째 Waypoint를 target으로 설정한다.
        target = Waypoints.points[0];
    }
Exemple #38
0
    IEnumerator deathRoutine(EnemyStats stats)
    {
        UnityEngine.Debug.Log("ResultsController.cs: Death Routine");

        if (canPress)
        {
            onResultsStart();

            yield return(new WaitForSeconds(4.533f));

            redScreen.transform.localPosition = RED_SCREEN_POS;

            windowLabel.text = "You Lose!";

            iTween.MoveTo(windowPanel.gameObject, iTween.Hash(
                              "x", 0,
                              "islocal", true,
                              "time", 0.4f,
                              "easetype", iTween.EaseType.easeOutExpo
                              )
                          );

            canPress = false;

            expLabel.text  = "0";
            goldLabel.text = DBAccess.instance.userPrefs.Gold.ToString();

            float expEarned  = ((((float)stats.level / (float)DBAccess.instance.userPrefs.Level) * (float)DBAccess.instance.userPrefs.Level) * 3) / 2;
            float goldEarned = expEarned / 2f;

            iTween.ValueTo(gameObject, iTween.Hash(
                               "from", 0,
                               "to", expEarned,
                               "delay", 1f,
                               "time", 1f,
                               "onupdatetarget", gameObject,
                               "onupdate", "expValueTo",
                               "easetype", iTween.EaseType.easeOutExpo
                               )
                           );

            iTween.ValueTo(gameObject, iTween.Hash(
                               "from", DBAccess.instance.userPrefs.Gold,
                               "to", goldEarned,
                               "delay", 1f,
                               "time", 1f,
                               "onupdatetarget", gameObject,
                               "onupdate", "goldValueTo",
                               "oncompletetarget", gameObject,
                               "oncomplete", "setExpAndGoldDeath",
                               "oncompleteparams", expEarned,
                               "easetype", iTween.EaseType.easeOutExpo
                               )
                           );

            onResultsFinished();
        }
    }
Exemple #39
0
    public void SaveEnemyStats()
    {
        string filePath = "";

#if UNITY_EDITOR
        filePath = EditorUtility.SaveFilePanel("Save EnemyStats File Dialog"
                                               , Application.dataPath
                                               , "stats"
                                               , "xml");
#endif
        if (filePath.Length != 0)
        {
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.AppendChild(xmlDoc.CreateXmlDeclaration("1.0", "utf-8", "yes"));

            XmlNode root = xmlDoc.CreateNode(XmlNodeType.Element, "EnemyStats", string.Empty);
            xmlDoc.AppendChild(root);

            Dictionary <int, EnemyStats> dicEnemyStats = TestPlayManager.Instance.dicEnemyStats;

            /*
             * DINOTREBLE= 0,
             * MIME= 1,
             * SAMURAI= 2,
             * ZOMBIE = 3,
             * SCIENTISTRIG= 4,
             * PIRATE = 5,
             * CHARACTERANIM= 6,
             */

            for (int i = 0; i < dicEnemyStats.Count; i++)
            {
                EnemyStats enemyStats = dicEnemyStats[i];

                XmlNode childNode = xmlDoc.CreateNode(XmlNodeType.Element, "Stats", string.Empty);
                root.AppendChild(childNode);

                XmlElement enemyNo = xmlDoc.CreateElement("No");
                enemyNo.InnerText = i.ToString();
                childNode.AppendChild(enemyNo);

                XmlElement enemyHp = xmlDoc.CreateElement("Hp");
                enemyHp.InnerText = enemyStats.hp.ToString();
                childNode.AppendChild(enemyHp);

                XmlElement enemyDef = xmlDoc.CreateElement("Def");
                enemyDef.InnerText = enemyStats.def.ToString();
                childNode.AppendChild(enemyDef);

                XmlElement enemySpeed = xmlDoc.CreateElement("Speed");
                enemySpeed.InnerText = enemyStats.speed.ToString();
                childNode.AppendChild(enemySpeed);
            }

            xmlDoc.Save(filePath);
            Debug.Log("EnemyStats Xml File  Save Succes!");
        }
    }
    // Start is called before the first frame update
    void Start()
    {
        schießenscript   = GameObject.Find("Arrow").GetComponent <Schießen2>();
        enemystatsscript = GameObject.Find("Enemy").GetComponent <EnemyStats>();

        player  = GameObject.Find("Me");
        target  = GameObject.FindGameObjectWithTag("Arrow").GetComponent <Transform>();
        target1 = GameObject.FindGameObjectWithTag("Arrow").GetComponent <Collider>();
    }
Exemple #41
0
	void Awake()
	{
		mainCamera = GameObject.Find("Main Camera").GetComponent<Camera>();
		enemyStats = new EnemyStats();
		enemyStatBarCreator = GameObject.Find("EnemyStats Canvas").GetComponent<EnemyStatBarCreation>();
		enemyStatBar = enemyStatBarCreator.CreateEnemyStatBar(mainCamera.WorldToScreenPoint(transform.position));
		enemyHealthText = enemyStatBar.transform.GetChild(1).GetComponent<Text>();
		enemySpeedText = enemyStatBar.transform.GetChild(3).GetComponent<Text>();
	}
 public void SetFiring(RaycastHit hit)
 {
     target = hit.collider.gameObject.GetComponentInParent<EnemyStats>();
     foreach (var laser in lasers)
     {
         laser.SetPosition(1, transform.InverseTransformPoint(hit.point));
         laser.enabled = true;
     }
 }
Exemple #43
0
	void onUIUpdate( Gun gun, PlayerController._GameState state, GameObject clicked, EnemyStats stats )
	{
		scaleToBulletCapacity = originalScale;
		scaleToBulletCapacity.x = originalScale.x * ( (float)gun.capacity / (float)gun.loadedAmmo.magSize );
				
		if( scaleToBulletCapacity.x == 0 ) scaleToBulletCapacity.x = 0.1f;
		
		transform.localScale = scaleToBulletCapacity;
	}
Exemple #44
0
	void onUIUpdate( Gun gun, PlayerController._GameState gameState, GameObject clicked, EnemyStats stats )
	{
		if( gameState == PlayerController._GameState.Reload )
		{	
			iTween.MoveTo( gameObject, iTween.Hash(
				axis, firstPos,
				"islocal", true,
				"time", 0.4f,
				"easetype", iTween.EaseType.easeOutBack
				)
			);
			
			if( name == "Health Meter" )
			{
				iTween.MoveTo( gameObject, iTween.Hash(
					"y", 300f,
					"islocal", true,
					"time", 0.4f,
					"easetype", iTween.EaseType.easeOutBack
					)
				);
			}
		}
		if( gameState == PlayerController._GameState.Active || gameState == PlayerController._GameState.IsReloading )
		{
			iTween.MoveTo( gameObject, iTween.Hash(
				"y", secondPos,
				"islocal", true,
				"time", 0.4f,
				"easetype", iTween.EaseType.easeInBack
				)
			);
			
			if( gameState == PlayerController._GameState.Active )
			{
				if( name == "Health Meter" )
				{
					iTween.MoveTo( gameObject, iTween.Hash(
						"y", 0,
						"islocal", true,
						"time", 0.4f,
						"easetype", iTween.EaseType.easeOutBack
						)
					);
				} else {
					iTween.MoveTo( gameObject, iTween.Hash(
						axis, secondPos,
						"islocal", true,
						"time", 0.4f,
						"easetype", iTween.EaseType.easeOutBack
						)
					);
				}
			}
		}
	}
Exemple #45
0
    public OffensiveTank(Transform enemyTransformHead, Transform playerTransform, NavMeshAgent navAgent, EnemyStats enemyStats, PlayerStats playerStats)
    {
        this.enemyTransformHead = enemyTransformHead;
        this.playerTransform = playerTransform;
        this.navAgent = navAgent;
        this.enemyStats = enemyStats;
        this.playerStats = playerStats;

        this.navAgent.Stop();
    }
    void Start ()
    {
        player = GameObject.FindGameObjectWithTag("Player");
        sprite = GetComponent<SpriteRenderer>();
        stats = GetComponent<EnemyStats>();
        animationController = GetComponent<Animator>();
        babaYaga = GameObject.FindGameObjectWithTag("BabaYaga").GetComponent<BabaYaga>();
        strikeSpeed = stats.chaseSpeed + (babaYaga.GetComponent<BabaYaga>().aggressionPhase * 50);
        launched = false;
	}
Exemple #47
0
 public Enemies(Enemies enemy)
 {
     this.name = enemy.name;
     this.enemyStats = new EnemyStats(enemy.enemyStats);
     this.charAbilitiesIndex = new List<int>(enemy.charAbilitiesIndex);
     //this.statusEffectsIndex = new List<int>(enemy.statusEffectsIndex);
     innateAbilities = new List<Ability>();
     affectedStatusEffects = new List<StatusEffects>();
     onHitStatusEffects = new List<StatusEffects>();
 }
    // Use this for initialization
    void Start()
    {
        // 初期化
        enemyIdentifier = false;
        currentRemainTime = fadeTime;
        spRenderer = GetComponent<SpriteRenderer>();

        //経験値参照
        enemyStats = this.gameObject.GetComponent<EnemyStats> ();
    }
Exemple #49
0
    void Awake()
    {
        // Set up references
        enemyBehavior = GetComponent<EnemyBehavior>();
        enemyStats = GetComponent<EnemyStats>();

        // Subscribe to appropriate events
        References.stateManager.changeState += onStateChange;
        enemyBehavior.changeOfActions += onChangeAction;
        enemyBehavior.onEnemyDeath += onDeath;
    }
Exemple #50
0
 // Use this for initialization
 void Start()
 {
     enemyStats = GetComponent<EnemyStats> ();
     nav = GetComponent<NavMeshAgent> ();
     anim = GetComponentInChildren<Animator> ();
     courseChangeTimeIncrement = Random.Range (3f, courseChangeTimeIncrementMax);
     courseTimer = courseChangeTimeIncrement;
     fuseTimer = 0f;
     nav.speed = crawlSpeed;
     shakeCamera = GameObject.FindGameObjectWithTag (Tags.mainCamera).GetComponent<SmoothCamera2D> ();
 }
 void Awake()
 {
     villageManager = GameObject.FindObjectOfType<VillageManager>();
     spriteRender = GetComponent<SpriteRenderer>();
     animator = GetComponent<Animator>();
     if(animator == null)
     {
         Debug.LogError("EnemyAi need an animator");
         animator.SetTrigger("Reset");
     }
     enemyStats = GetComponent<EnemyStats>();
 }
    public virtual void Awake()
    {
        enemyStats = GetComponent<EnemyStats>();
        enemyAttack = GetComponent<Attack>();
        enemyAttack.setMoveYAxis(moveYAxis);
        enemyAttack.setMoveToAttack(false);

        if(enemyStats.spriteObject != null){
            enemyAnimator = enemyStats.spriteObject.GetComponent<Animator>();
            hashAnimator = enemyStats.spriteObject.GetComponent<HashAnimatorUnit>();
        }
    }
 void SelectedEnemy()
 {
     _characterStats = enemySelected.GetComponent<EnemyStats>();
     if(_characterSelected.character1Selected == true){
         enemySelected = Enemies[0];
     }
     if(_characterSelected.character2Selected == true){
         enemySelected = Enemies[1];
     }
     if(_characterSelected.character3Selected == true){
         enemySelected = Enemies[2];
     }
 }
Exemple #54
0
 private void OnTriggerStay(Collider objectColliding)
 {
     if (objectColliding.CompareTag("Enemy"))
     {
         //Repeat each X amount of time.
         if (Time.time > m_Cooldown)
         {
             m_Cooldown = Time.time + m_AttackRate;
             //Take the enemy health and reduce it by X
             m_EnemyStatsScript = objectColliding.gameObject.transform.parent.GetComponent<EnemyStats>();
             m_EnemyStatsScript.TakeDamage(m_Damage);
         }
     }
 }
Exemple #55
0
    //global hash id
    //private HashIDs hash;
    void Awake()
    {
        isPlayerSighted = false;
        player = GameObject.FindGameObjectWithTag(Tags.player);
        playerTransform = player.transform;
        playerNotSightedPos = new Vector3(99999f, 99999f, 99999f);
        navAgent = GetComponent<NavMeshAgent>();
        enemyStats = GetComponent<EnemyStats>();

        anim = GetComponent<Animator>();
        currSpeed = navAgent.speed;

        actState = EnemyActionState.Idle;

        //hash = GameObject.FindGameObjectWithTag(Tags.GameController).GetComponent<HashIDs>();
    }
    void OnEnable()
    {
        if(!alreadyEnabledOnce){
            alreadyEnabledOnce = true;

            enemyStats = damageTarget.GetComponent<EnemyStats> ();
            enemyStats.enemyHealth -= damage;
            enemyStats.damageForce = damageForce;
            enemyStats.BloodEffects (damageType, damageTarget.transform.position, damageTarget.transform.rotation);

            //if there is a chained action...
            if(targetGO){
                (targetGO.GetComponent(scriptNameToEnable) as MonoBehaviour).enabled = true;
            }
        }
    }
Exemple #57
0
	void onEnemyStatsChange( EnemyStats stats, EnemyBase._EnemyState state )
	{
		if( stats.health == 0 && state == EnemyBase._EnemyState.Dead )
		{
			thisLabel.enabled = true;
			
			iTween.ScaleTo( gameObject, iTween.Hash(
				"scale", ORIGINAL_SCALE * 1.3f,
				"islocal", true,
				"time", 0.2f,
				"looptype", iTween.LoopType.pingPong,
				"easetype", iTween.EaseType.easeOutQuad
				)
			);
		}
	}
Exemple #58
0
	void onUIUpdate( Gun gun, PlayerController._GameState gameState, GameObject clicked, EnemyStats stats ) 
	{ 
		thisLabel.text = gun.capacity.ToString(); 
		thisLabel.color = ORIGINAL_COLOR;
		
		if( gun.capacity > 0 )
		{
			isPanic = false;
			
			iTween.ScaleTo( gameObject, iTween.Hash(
				"scale", SCALE_TO,
				"islocal", true,
				"time", 0.05f,
				"easetype", iTween.EaseType.easeOutQuad
				)
			);
			iTween.ScaleTo( gameObject, iTween.Hash(
				"scale", CACHED_SCALE,
				"islocal", true,
				"time", 0.05f,
				"delay", 0.05f,
				"easetype", iTween.EaseType.easeInQuad
				)
			);
		}
		else
		{
			thisLabel.color = PANIC_COLOR;
			
			if( !isPanic )
			{
				iTween.Stop(gameObject);
				transform.localScale = CACHED_SCALE;
				
				isPanic = true;
			}
			
			iTween.ScaleTo( gameObject, iTween.Hash(
				"scale", SCALE_TO,
				"islocal", true,
				"time", 0.1f,
				"looptype", iTween.LoopType.pingPong,
				"easetype", iTween.EaseType.easeInQuad
				)
			);
		}
	}
 void Start()
 {
     enemyStats = GetComponentInChildren<EnemyStats> ();
     lineRenderer = GetComponent<LineRenderer> ();
     lineRenderer.SetPosition (0, transform.position);
     lineRenderer.SetPosition (1, transform.position);
     audioSource = GetComponent<AudioSource> ();
     if (armDelay == 0f) {
         lineRenderer.enabled = true;
         armed = true;
     }
     else{
         audioSource.clip = audioClips[0];
         audioSource.volume = 0.3f;
         audioSource.Play ();
     }
 }
Exemple #60
0
    void Awake()
    {
        switch (transform.parent.tag)
        {
            case "Troop":
                troopStats = GetComponentInParent<TroopStats>();
                troopStats.alertOnDeath += death;
                break;

            case "Enemy":
                enemyStats = GetComponentInParent<EnemyStats>();
                enemyStats.alertOnDeath += death;
                break;
        }
        References.stateManager.nextLevel += nextLevel;
        rescale();
    }