学习目标:
制作一个地刺Tilemap地刺,可以对Player产生伤害。
学习内容:
首先把素材拖入到TilePalete面板创建好后,然后在Grid面板上创建一个TileMap
然后随便添加一处地方并且给他TileMap Collider2D
?
?再创建一个Spike的脚本
using System.Collections; using System.Collections.Generic; using UnityEngine;
public class Spike : MonoBehaviour { ? ? public int damage; ? ? private PlayerHealth playerHealth; ? ? private void Awake() ? ? { ? ? ? ? //在GameController上的静态变量调用音乐管理的脚本 ? ? ? ? GameController.soundManager = GameObject.FindGameObjectWithTag("SoundManager").GetComponent<SoundManager>(); ? ? ? ? //在GameController上的静态变量调用玩家血量的脚本 ? ? ? ? playerHealth = GameObject.FindGameObjectWithTag("Player").GetComponent<PlayerHealth>(); ? ? } ? ? private void OnTriggerEnter2D(Collider2D other) ? ? { ? ? ? ? if (other.gameObject.CompareTag("Player") && other.GetType().ToString() == "UnityEngine.CapsuleCollider2D") ? ? ? ? { ? ? ? ? ? ? playerHealth.DamagePlayer(damage); ? ? ? ? ? ? GameController.soundManager.HurtAudio(); ? ? ? ? } ? ? } }
再给他一个damage伤害值
学习产出:
掉血成功
?
?
|