*
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
public class LaserController : MonoBehaviour {
|
||||
public Led laserBeam;
|
||||
public Predicate[] enablePredicates;
|
||||
public PlayerSensor sensor;
|
||||
public RandomSoundPlayer hitPlayer;
|
||||
private bool _enabled;
|
||||
|
||||
// Use this for initialization
|
||||
void Start () {
|
||||
if (sensor != null) {
|
||||
sensor.PlayerEnter += sensor_PlayerEnter;
|
||||
}
|
||||
}
|
||||
|
||||
void sensor_PlayerEnter(PlayerSensor senso, GameObject player) {
|
||||
senso.Player.GetComponent<Rigidbody2D>().velocity = Vector3.zero;
|
||||
senso.Player.GetComponent<Health>().ApplyDamage(100, gameObject, transform.position);
|
||||
if (hitPlayer != null) {
|
||||
hitPlayer.Play();
|
||||
}
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update () {
|
||||
_enabled = true;
|
||||
foreach (var p in enablePredicates) {
|
||||
if (p != null && !p.Check()) {
|
||||
_enabled = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
laserBeam.gameObject.SetActive(_enabled);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ea5da88a0c54b8145a3c6504a0613822
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
Reference in New Issue
Block a user