12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- using UnityEngine;
- using System.Collections;
- public class Block : MapObject {
- public Texture[] textureArr;
- public LineRenderer lineRenderer;
- public void Init (Map map, TeamUtil.Team team = TeamUtil.Team.None)
- {
- base.Init (map);
- this.team = team;
- AStarNode.Type astarNodeType = TeamUtil.GetAStarNodeType(team);
- AStarNode node = map.GetAStarNode(col, row);
- node.type = astarNodeType;
- }
- public override TeamUtil.Team team {
- get {
- return base.team;
- }
- set {
- base.team = value;
- int index = value.GetHashCode() - 1;
- if(index < 0)
- index = TeamUtil.Team.Yellow.GetHashCode();
- Renderer[] renderers = this.GetComponentsInChildren<Renderer>();
- for(int i=0; i<renderers.Length; i++)
- {
- renderers[i].material.mainTexture = textureArr[index];
- }
- }
- }
- void Update()
- {
- lineRenderer.material.SetTextureOffset("_MainTex", new Vector2(-GameTime.time * 2f, 0f));
- }
- public override void Remove ()
- {
- AStarNode node = map.GetAStarNode(col, row);
- node.type = AStarNode.Type.Empty;
- Destroy(this.gameObject);
- }
- }
|