示例#1
0
 void MakeInstance()
 {
     if (instance == null)
     {
         instance = this;
     }
 }
示例#2
0
 public void UseDynamite(IPlayer sender, Dynamite dynamite)
 {
     if (!this.open)
     {
         this.open = true;
         this.Game.Cellar.Show();
         sender.Inventory.Remove(dynamite);
     }
 }
示例#3
0
 void OnTriggerEnter(Collider other)
 {
     if(other.gameObject.GetComponent("Client") != null) //You can change this script to any script that only the player has
     {
         Debug.Log("Colliding");
         if (PowerUpType == (int) PowerUps.LT_TRANS)
         {
             Transporter trans = new Transporter();
             trans.Activate(character, spawnpoint);
         }
         else if(PowerUpType == (int) PowerUps.LT_EXPL)
         {
             Dynamite exp = new Dynamite();
             exp.Activate();
         }
     }
 }
示例#4
0
 void Update()
 {
     toolUseTimer -= Time.deltaTime;
     if (toolUseTimer <= 0f && (Input.GetKeyDown(KeyCode.Space) || Input.GetKeyDown(KeyCode.X)))
     {
         if (currentTool == ToolType.Dynamite && dynamiteCount > 0)
         {
             dynamiteCount -= 1;
             Dynamite dynamite = Instantiate(dynamitePrefab);
             dynamite.transform.SetParent(transform.parent, false);
             dynamite.Initialize(
                 (int)(transform.localPosition.x + 0.5f),
                 (int)(transform.localPosition.y + 0.5f),
                 mapGrid
                 );
             toolUseTimer = dynamite.UseInterval;
             UIManager.main.UseTool(currentTool);
         }
         else if (currentTool == ToolType.Bomb && bombCount > 0)
         {
             bombCount -= 1;
             Dynamite bomb = Instantiate(bombPrefab);
             bomb.transform.SetParent(transform.parent, false);
             bomb.Initialize(
                 (int)(transform.localPosition.x + 0.5f),
                 (int)(transform.localPosition.y + 0.5f),
                 mapGrid
                 );
             toolUseTimer = bomb.UseInterval;
             UIManager.main.UseTool(currentTool);
         }
         else if (currentTool == ToolType.Block && blockCount > 0)
         {
             blockCount  -= 1;
             toolUseTimer = wallPrefab.UseInterval;
             UIManager.main.UseTool(currentTool);
             mapGrid.PlaceWall(
                 (int)(transform.localPosition.x + 0.5f),
                 (int)(transform.localPosition.y + 0.5f)
                 );
         }
     }
 }
示例#5
0
 public void OnDynamiteIgnite(Dynamite dynamite)
 {
     this.m_Dynamite = dynamite;
     this.m_Animator.SetTrigger(this.m_TorchIgniteHash);
 }
示例#6
0
    void DropDynamite()
    {
        Dynamite dynamite = Instantiate(Dynamite, new Vector3(transform.position.x, transform.position.y, -.05f), transform.rotation);

        dynamite.SetMaximumRange(collected);
    }