Мигающий фонарь, звуки шагов


Для лампы:

using UnityEngine;
using System.Collections;

public class CharacterLamp : MonoBehaviour 
{
	public Transform lamp;
	private int rand;
	
	// Update is called once per frame
	void Update () 
	{
	rand = Random.Range(0,1000);
		if(rand >= 980)
		{
			lamp.active = false;
		}
		else
		{
			lamp.active = true;
		}
	}
}

Для движения:

using UnityEngine;
using System.Collections;

public class MyCharacterMotor : MonoBehaviour {
    public float speed = 6.0F;
    public float gravity = 20.0F;
	public AudioClip step;
	private float timeout;
	public float footstepTime = 0.7f;
    private Vector3 moveDirection = Vector3.zero;
    void Update() {
        CharacterController controller = GetComponent<CharacterController>();
        if (controller.isGrounded) 
		{
			timeout+= Time.deltaTime;
            moveDirection = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
            moveDirection = transform.TransformDirection(moveDirection);
            moveDirection *= speed;
			if(Input.GetButton("Vertical")&timeout>=footstepTime||Input.GetButton("Horizontal")&timeout>=footstepTime)
			{
				timeout = 0;
				audio.PlayOneShot(step);	
			}
        }
        moveDirection.y -= gravity * Time.deltaTime;
        controller.Move(moveDirection * Time.deltaTime);
    }
}

Комментарии к этому посту

  • Николай
    05.03.2014 at 21:45

    Намного лучше использовать для мигания лампы изменение интенсивности Light


  • Maxim
    12.11.2015 at 19:55

    FPS при мигании лампы слишком будет проседать.



Оставить комментарий