Ejemplo n.º 1
0
 private void SetShipSprite()
 {
     if (shipStateSprites.Length == 4)
     {
         percent = ((float)playerStat.PlayerHP / (float)playerStat.PlayerMaxHP);
         percent = Mathf.Max(0, Mathf.Min(percent, 1));
         if (percent < 0.3f)
         {
             shipSpriteRenderer.sprite = shipStateSprites[3];
             partFalling = shipPartsPooler.Get(true);
             partFalling.GetComponent <SpriteRenderer>().sprite = shipPartsSprites[2];
         }
         else if (percent < 0.6f)
         {
             shipSpriteRenderer.sprite = shipStateSprites[2];
             partFalling = shipPartsPooler.Get(true);
             partFalling.GetComponent <SpriteRenderer>().sprite = shipPartsSprites[1];
         }
         else if (percent < 0.8f)
         {
             shipSpriteRenderer.sprite = shipStateSprites[1];
             partFalling = shipPartsPooler.Get(true);
             partFalling.GetComponent <SpriteRenderer>().sprite = shipPartsSprites[0];
         }
         else
         {
             partFalling = null;
             shipSpriteRenderer.sprite = shipStateSprites[0];
         }
     }
     else
     {
         Debug.Log("Not enough sprites");
     }
 }
Ejemplo n.º 2
0
    private bool MakeContact(DetailType type, int index = 0)
    {
        detailObject = contactDetailPool.Get(true);
        if (detailObject == null)
        {
            Debug.LogError("Couldnt Get GameObject from Pool, check refrence");
            return(false);
        }
        activeObjects.Add(detailObject);
        cDetail = detailObject.GetComponent <ContactDetail>();
        cDetail.onButtonClick = SetDetailDelete; //cheap trick for now
        if (cDetail != null)
        {
            if (cDetail.SetContactDetail(contact, type, index) == false)
            {
                detailObject.SetActive(false); // so we wouldnt have empty spaces, chances of getting a false is dim if not sent correctly
            }
        }
        else
        {
            Debug.LogError("Couldnt Get ContactDetail from Pool, check refrence");
            return(false);
        }

        return(true);
    }
Ejemplo n.º 3
0
    public GameObject CreateBullet(Transform parent, bool enemy)
    {
        var obj = bulletPool.Get(parent.position, parent.rotation);

        obj.GetComponent <Bullet>().Shoot(enemy);
        return(obj);
    }
Ejemplo n.º 4
0
        void CreateUiCard(CardHand card, Vector3 position)
        {
            var uiCard        = Pooler.Get <IUiCard>(cardPrefab);
            var cardTransform = uiCard.transform;

            cardTransform.SetParent(CardHandSelector.transform);
            cardTransform.position = position;
            uiCard.SetAndUpdateView(card.Data, id, this);
            uiCard.Initialize();
            CardHandSelector.AddCard(uiCard);
            _registry.Add(uiCard, card);
        }
Ejemplo n.º 5
0
    private void UpdateContactsList()
    {
        if (Contacts == null)
        {
            return;
        }

        noContactsText.text = Contacts.Count == 0 ? "Phone Book Empty" : "";
        DeactivateHolders();

        for (int i = 0; i < Contacts.Count; i++)
        {
            contact = Contacts[i];
            if (contact == null)
            {
                continue;
            }

            //Safety Checks
            holderObject = contactHolderPool.Get();
            if (holderObject == null)
            {
                Debug.LogError("Error getting pooled object");
                return;
            }
            holder = holderObject.GetComponent <ContactHolder>();
            if (holder == null)
            {
                Debug.LogError("Error getting pooled object component");
                return;
            }
            //
            //Debug.Log(holder.name);
            holder.SetConact(contact);
            holderObject.SetActive(true);
            activeContactHolders.Add(holderObject);
        }
    }
Ejemplo n.º 6
0
    public void Attack(Transform spawnPoint, IPlayer attacker)
    {
        var projectile = missilePool.Get();

        projectile.Spawn(spawnPoint, ref attacker, Material);
    }
Ejemplo n.º 7
0
 public GameObject CreateAsteroid()
 {
     return(asteroidPool.Get());
 }
Ejemplo n.º 8
0
 public GameObject CreateEnemyCaptain()
 {
     return(enemyCaptainPool.Get());
 }
Ejemplo n.º 9
0
 public GameObject CreateEnemyShip()
 {
     return(enemyShipPool.Get());
 }