Ejemplo n.º 1
0
 private void Awake()
 {
     if (PlayerCharacteristics.GetValue(PowerShape.Type.WATTER_WALK)) // player water perks
     {
         Physics2D.IgnoreCollision(GetComponent <BoxCollider2D>(), GameObject.FindGameObjectWithTag("Player").GetComponent <CircleCollider2D>());
     }
 }
Ejemplo n.º 2
0
    private void Start()
    {
        spritesParent.GetComponent <SpriteRenderer>().sprite = GameParameters.PlayerSprite;
        attackSpeed = PlayerCharacteristics.GetValue(PowerShape.Type.ATTACK_SPEED_UP1) ?
                      (GameParameters.playerAttackSpeedUpgrade2) : // upgrade 2
                      (PlayerCharacteristics.GetValue(PowerShape.Type.ATTACK_SPEED) ?
                       GameParameters.playerAttackSpeedUpgrade1 :  // upgrade 1
                       GameParameters.playerAttackSpeedDefault);   // no upgrade

        damage = PlayerCharacteristics.GetValue(PowerShape.Type.ATTACK_DAMAGE_UP1) ?
                 (GameParameters.playerDamageUpgrade2) : // upgrade 2
                 (PlayerCharacteristics.GetValue(PowerShape.Type.ATTACK_DAMAGE) ?
                  GameParameters.playerDamageUpgrade1 :  // upgrade 1
                  GameParameters.playerDamageDefault);   // no upgrade

        characterSpeed = PlayerCharacteristics.GetValue(PowerShape.Type.SPEED_MOVEMENT_UP1) ?
                         (GameParameters.playerSpeedUpgrade2) : // upgrade 2
                         (PlayerCharacteristics.GetValue(PowerShape.Type.SPEED_MOVEMENT) ?
                          GameParameters.playerSpeedUpgrade1 :  // upgrade 1
                          GameParameters.playerSpeedDefault);   // no upgrade

        rockshield = new List <GameObject>();
        if (PlayerCharacteristics.GetValue(PowerShape.Type.ROCK_SHIELD))
        {
            GameParameters.numberOfRockShield = PlayerCharacteristics.GetValue(PowerShape.Type.ROCK_SHIELD_UP1) ? GameParameters.numberOfRockShieldUpgrade : GameParameters.numberOfRockShieldDefault;
            GenerateRockShield();
            ActivateRockShield();
        }
        if (PlayerCharacteristics.GetValue(PowerShape.Type.AIR_SHIELD))
        {
            GameParameters.airShieldActivationRange = PlayerCharacteristics.GetValue(PowerShape.Type.AIR_SHIELD) ? GameParameters.airShieldActivationRangeUpgrade : GameParameters.airShieldActivationRangeDefault;
            CreateAirShield();
        }
        GetSpriteRenderer();
    }
 // Use this for initialization
 void Start()
 {
     m_health = GetComponent <Health>();
     playerCharacteristics = transform.parent.GetComponent <PlayerCharacteristics>();
     SetSelectedCharacterAnimator(playerCharacteristics.color);
     m_animator = GetComponent <Animator>();
 }
Ejemplo n.º 4
0
    private void IceBallAttack()
    {
        int numberProjectile = PlayerCharacteristics.GetValue(PowerShape.Type.ICE_BALL_UP1) ? 4 : 2;

        for (int i = 0; i < numberProjectile; i++)
        {
            GameObject iceball = Instantiate(iceballModel);
            iceball.transform.parent   = transform;
            iceball.transform.position = iceBallOrigins[i].position;
            iceball.transform.up       = spritesParent.transform.up;
            iceball.transform.SetParent(objects.transform);

            iceball.GetComponent <ProjectileController>().Shoot(iceBallOrigins[i].position - transform.position, gameObject.tag, GameParameters.iceballSpeed, damage);

            CircleCollider2D iceballCollider = iceball.GetComponent <CircleCollider2D>();
            // Ignore collision between the player and the bullet (trigger ok)
            Physics2D.IgnoreCollision(mainCollider, iceballCollider);

            if (rockshield.Count > 0)
            {
                IgnoreCollisionWithRockShield(iceballCollider);
            }
            if (airshield != null)
            {
                IgnoreCollisionWithAirShield(iceballCollider);
            }
        }
    }
Ejemplo n.º 5
0
    private void UpdateActivePower()
    {
        //Reset
        PlayerCharacteristics.ResetAll();
        foreach (TMP_Text item in activePowerTexts)
        {
            DestroyImmediate(item.gameObject);
        }
        activePowerTexts.Clear();
        //Debug.Log("--> " + activePowerCols[0].transform.childCount);

        int currentCol = 0;

        foreach (PowerShape powerShape in powerShapes)
        {
            if (activePowerCols[currentCol].transform.childCount > maxNumberOfElementInOneCol)
            {
                currentCol++;
            }

            TMP_Text text = Instantiate(activePowerTextModel);
            text.text = powerShape.DisplayedName;
            PlayerCharacteristics.ChangeValue(powerShape.PowerShapeType, true);
            text.transform.SetParent(activePowerCols[currentCol].transform);
            text.transform.localScale = Vector3.one;

            activePowerTexts.Add(text);
        }
    }
    // Start is called before the first frame update
    void Start()
    {
        thePlayer = transform.parent.parent.gameObject;
        PlayerCharacteristics playerScript = thePlayer.GetComponent <PlayerCharacteristics>();

        Name_UIText.text = playerScript.playerName;
    }
Ejemplo n.º 7
0
    private void FireballAttack()
    {
        int numberProjectile = PlayerCharacteristics.GetValue(PowerShape.Type.FIRE_BALL_UP1) ? 3 : 1;

        for (int i = 0; i < numberProjectile; i++)
        {
            // Generate fireball
            GameObject fireball = Instantiate(fireballModel);
            fireball.transform.position = fireballOrigins[i].position;
            fireball.transform.right    = fireballOrigins[i].right;
            fireball.transform.SetParent(objects.transform);

            ProjectileController projectileController = fireball.GetComponent <ProjectileController>();
            projectileController.Shoot(fireball.transform.up, gameObject.tag, GameParameters.fireballSpeed, damage);

            CircleCollider2D fireballCollider = fireball.GetComponent <CircleCollider2D>();
            // Ignore collision between the player and the fireball (trigger ok)
            Physics2D.IgnoreCollision(mainCollider, fireballCollider);
            if (rockshield.Count > 0)
            {
                IgnoreCollisionWithRockShield(fireballCollider);
            }
            if (airshield != null)
            {
                IgnoreCollisionWithAirShield(fireballCollider);
            }
        }
    }
Ejemplo n.º 8
0
    public void Start()
    {
        // получаем компоненты у игрока и его характеристики
        PlCh = GameObject.Find("-Characteristics-").GetComponent<PlayerCharacteristics>();

        myPathfinder = GetComponent<AIFollow>();
        my = GetComponent<npcCharacteristics>();
        myAnimator = myBody.GetComponent<Animator>();
        myBehaviour = GetComponent<Behaviour>();
        myEnemySearch = GetComponent<EnemySearchProtocol>();
        aggressivePlayer = GetComponent<EnemyAttack>();

        // Получаем контроллер
        _controller = GetComponent<CharacterController>();

        // Получаем компонент трансформации объекта, к которому привязан данный компонент
        myTransform = transform;

        // Получаем компонент трансформации игрока
           	myEnemyTransform = GameObject.Find("GLOBAL").transform;

        myModel = transform.GetChild(0);

        //выключаем пасфайндер, чтобы не ходил пока
        Walk(false);
    }
Ejemplo n.º 9
0
    public override void ChangePlayerStats(PlayerCharacteristics playerStats)
    {
        playerStats.defaultStrength     += 2;
        playerStats.defaultIntelligence -= 1;

        playerStats.ChangeStats();
    }
Ejemplo n.º 10
0
    public override void ChangePlayerStats(PlayerCharacteristics playerStats)
    {
        playerStats.defaultDexterity  += 2;
        playerStats.defaultResistance -= 1;

        playerStats.ChangeStats();
    }
Ejemplo n.º 11
0
 protected override void SetMaxHealth()
 {
     maxHealth = PlayerCharacteristics.GetValue(PowerShape.Type.MAX_HEALTH_UP1) ?
                 (GameParameters.playerMaxHealthUpgrade2) : // upgrade 2
                 (PlayerCharacteristics.GetValue(PowerShape.Type.MAX_HEALTH) ?
                  GameParameters.playerMaxHealthUpgrade1 :  // upgrade 1
                  GameParameters.playerMaxHealthDefault);   // no upgrade
 }
Ejemplo n.º 12
0
 private void DamagePlayer(Collider2D collision)
 {
     if (!PlayerCharacteristics.GetValue(PowerShape.Type.LAVA_RESISTANT)) // can levitate lava
     {
         if (collision.tag == "Player")
         {
             collision.gameObject.GetComponent <PlayerController>().Damage(GameParameters.LAVA_DAMAGE);
             Debug.Log("QUEUE");
         }
     }
 }
Ejemplo n.º 13
0
    public bool CanBePlacedOnInventory()
    {
        foreach (Type item in Dependencies)
        {
            if (!PlayerCharacteristics.GetValue(item))
            {
                return(false);
            }
        }

        return(true);
    }
Ejemplo n.º 14
0
 // Use this for initialization
 void Start()
 {
     Hand = gameObject.transform.GetChild(1).transform.GetChild(0).gameObject;
     if (transform.name == "Player2")
     {
         chasingWho = "Player1";
     }
     if (transform.name == "Player1")
     {
         chasingWho = "Player2";
     }
     enemyState            = GameObject.Find(chasingWho).GetComponent <Movement>();
     playerCharacteristics = transform.GetComponent <PlayerCharacteristics>();
 }
Ejemplo n.º 15
0
 public virtual void Damage(float damage)
 {
     health -= damage;
     if (health <= 0)
     {
         if (tag != "Player" && PlayerCharacteristics.GetValue(PowerShape.Type.LIFE_STEAL))
         {
             GameObject.FindGameObjectWithTag("Player").GetComponent <CharacterController>().Heal(GameParameters.lifeSteal);
         }
         if (tag == "Player")
         {
             SceneManager.LoadScene("MainMenuScene");
         }
         Destroy(gameObject);
     }
 }
Ejemplo n.º 16
0
    public override void Attack()
    {
        if (canAttack)
        {
            if (PlayerCharacteristics.GetValue(PowerShape.Type.FIRE_BALL))
            {
                FireballAttack();
            }

            if (PlayerCharacteristics.GetValue(PowerShape.Type.ICE_BALL))
            {
                IceBallAttack();
            }
            StartCoroutine(AttackCooldown());
        }
    }
Ejemplo n.º 17
0
    // Start is called before the first frame update
    void Awake()
    {
        if (spritesParent == null)
        {
            spritesParent = gameObject;
        }
        rigid2d      = GetComponent <Rigidbody2D>();
        mainCollider = GetComponent <CircleCollider2D>();

        SetMaxHealth();
        health = maxHealth;

        lifebar = transform.Find("LifeBar").Find("CurrentLifeParent").gameObject;
        transform.Find("LifeBar").gameObject.SetActive(PlayerCharacteristics.GetValue(PowerShape.Type.PRIM_LIFEBAR_VISION));
        startLifeBarWidth = lifebar.transform.localScale.x;

        Physics2D.IgnoreCollision(mainCollider, GameObject.FindGameObjectWithTag("Player").GetComponent <Collider2D>());
    }
Ejemplo n.º 18
0
    private void CheckInputs()
    {
        currentMove = Vector2.zero;

        float moveY = 0;
        float moveX = 0;

        if (PlayerCharacteristics.GetValue(PowerShape.Type.PRIM_MOVEMENT))
        {
            moveY = Input.GetAxisRaw("Vertical");
            moveX = Input.GetAxisRaw("Horizontal");
        }

        if (Input.GetMouseButton(0))
        {
            controller.Attack();
        }

        if (moveY > 0)
        {
            currentMove.y = 1;
        }
        else if (moveY < 0)
        {
            currentMove.y = -1;
        }

        if (moveX > 0)
        {
            currentMove.x = 1;
        }
        else if (moveX < 0)
        {
            currentMove.x = -1;
        }

        if (currentMove.y != 0 && currentMove.x != 0)
        {
            currentMove.y /= Mathf.Sqrt(2);
            currentMove.x /= Mathf.Sqrt(2);
        }
    }
Ejemplo n.º 19
0
    public override void Initialize(TModuleType player)
    {
        base.SetModule(player, "Scripts/Behaviour/Attributes");

        this.life       = new CurrentMaxf(438, 438);
        this.mana       = new CurrentMaxf(150, 150);
        this.experience = new CurrentMaxf(0.0f, 100.0f);
        //this.endurance.min = 100;

        base.attributes[((int)e_entityAttribute.Move_Speed)] = 100;

        this.skillRemain = 3;
        //this.timerForPotion = 200;

        base.Modules = new AModule <TModuleType>[]
        {
            (this.resources = new PlayerResource <TModuleType>()),
            (this.characteristics = new PlayerCharacteristics <TModuleType>()),
        };

        base.Initialize(base.ModuleManager);
    }
Ejemplo n.º 20
0
 public abstract void ChangePlayerStats(PlayerCharacteristics playerStats);
Ejemplo n.º 21
0
 public override void ChangePlayerStats(PlayerCharacteristics playerStats)
 {
     //Nuh-uh
 }
Ejemplo n.º 22
0
 void Start()
 {
     this.playerCharacteristics = base.ModuleManager.Attributes.Characteristics;
 }
Ejemplo n.º 23
0
 void Start()
 {
     playerHealthSlider = gameObject.GetComponent <Slider>();
     thePlayer          = transform.parent.parent.gameObject;
     playerScript       = thePlayer.GetComponent <PlayerCharacteristics>();
 }
Ejemplo n.º 24
0
 public void Start()
 {
     character = stats.GetComponent <PlayerCharacteristics>();
     other     = stats.GetComponent <PlayerOther>();
     updateText();
 }
Ejemplo n.º 25
0
 public override void ChangePlayerStats(PlayerCharacteristics playerStats)
 {
     //DoNothing
 }