[TUTORIAL] C4 - Plantar bomba.
2 participantes
Página 1 de 1
[TUTORIAL] C4 - Plantar bomba.
Olá pessoal, estou aqui novamente trazendo outro script simples, só que dessa vez é para plantar uma C4.
Você vai precisar de:
Uma Barra slider com o MaxValue em 300
Um objeto com Rigidbody para ser a C4 que vai spawnar quando plantar
Uma particula para emitir a explosao
E o som da explosão
Seu player tem que ter a tag "Player"
O Script tem que esta no lugar onde vai plantar a Bomba
Você vai precisar de:
Uma Barra slider com o MaxValue em 300
Um objeto com Rigidbody para ser a C4 que vai spawnar quando plantar
Uma particula para emitir a explosao
E o som da explosão
Seu player tem que ter a tag "Player"
O Script tem que esta no lugar onde vai plantar a Bomba
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class C4 : MonoBehaviour {
public Slider Barra;
private GameObject Player;
private bool podePlantar, Ativada;
public GameObject BombaPrefab;
private Transform Posicao;
public float TempoDeExplodir;
public ParticleSystem ExplosaoParticle;
public AudioClip ExplosaoAudio;
void Start () {
Ativada = false;
Player = GameObject.FindWithTag ("Player");
Posicao = GameObject.FindWithTag ("Player"). transform;
}
// Update is called once per frame
void Update () {
Physics.IgnoreCollision(BombaPrefab.GetComponent<Collider>(), GetComponent<Collider>());
if (Input.GetMouseButton (0) && podePlantar == true) {
Barra.gameObject.SetActive (true);
Barra.value += 2;
} else {
Barra.value = 0;
Barra.gameObject.SetActive (false);
}
if (Vector3.Distance (transform.position, Player.transform.position) < 5 && Ativada == false) {
podePlantar = true;
} else {
podePlantar = false;
}
if (Barra.value >= 300 && Ativada == false) {
Instantiate (BombaPrefab, Posicao.position, transform.rotation);
Barra.gameObject.SetActive (false);
Barra.value = 0;
podePlantar = false;
Ativada = true;
StartCoroutine ("TempoDaC4");
}
}
IEnumerator TempoDaC4 () {
yield return new WaitForSeconds (TempoDeExplodir);
Debug.Log ("EXPLODIU");
ExplosaoParticle.Emit(1);
GetComponent<AudioSource> ().PlayOneShot(ExplosaoAudio);
}
}
rafaelllsd- ProgramadorMaster
- PONTOS : 5242
REPUTAÇÃO : 507
Idade : 24
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
E para o outro time poder desativar a c4 ?
Como posso fazer isso ?
Exemplo: milícias (planta C4)
SWAT (desativa C4)
Como posso fazer isso ?
Exemplo: milícias (planta C4)
SWAT (desativa C4)
Sheyk- Avançado
- PONTOS : 3353
REPUTAÇÃO : 27
Idade : 25
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
No meu jogo de FPS só tem 2 modos de jogo que são eles : TDM e FFA. Eu gostaria de saber como criar um modo C4, onde o time de bandidos plantão a C4 e o time de polícia desativam a C4...
Me ajuda ae por favor Rafael
Me ajuda ae por favor Rafael
Sheyk- Avançado
- PONTOS : 3353
REPUTAÇÃO : 27
Idade : 25
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
Você pode fazer assim:
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class C4 : MonoBehaviour {
public Slider Barra;
public Slider Barra2;
private GameObject Player;
private bool podePlantar, Ativada;
public GameObject BombaPrefab;
private Transform Posicao;
public float TempoDeExplodir;
public ParticleSystem ExplosaoParticle;
public AudioClip ExplosaoAudio;
private bool Defusar, Desf = false;
void Start () {
Defusar = false;
Ativada = false;
Player = GameObject.FindWithTag ("Player");
Posicao = GameObject.FindWithTag ("Player"). transform;
}
// Update is called once per frame
void Update () {
Physics.IgnoreCollision (BombaPrefab.GetComponent<Collider> (), GetComponent<Collider> ());
if (Input.GetMouseButton (0) && podePlantar == true) {
Barra.gameObject.SetActive (true);
Barra.value += 2;
} else {
Barra.value = 0;
Barra.gameObject.SetActive (false);
}
if (Vector3.Distance (transform.position, Player.transform.position) < 5 && Ativada == false) {
podePlantar = true;
} else {
podePlantar = false;
}
if (Barra.value >= 300 && Ativada == false && Defusar == false) {
Instantiate (BombaPrefab, Posicao.position, transform.rotation);
Barra.gameObject.SetActive (false);
Barra.value = 0;
Defusar = true;
podePlantar = false;
Ativada = true;
StartCoroutine ("TempoDaC4");
}
if (Input.GetKey (KeyCode.E) && Vector3.Distance (transform.position, Player.transform.position) < 5 && Defusar == true && Desf == false) {
Barra2.gameObject.SetActive (true);
Barra2.value -= 2;
} else {
Barra2.gameObject.SetActive (false);
Barra2.value = 300;
}
if (Barra2.value <= 0) {
Desf = true;
Barra2.gameObject.SetActive (false);
}
}
IEnumerator TempoDaC4 () {
yield return new WaitForSeconds (TempoDeExplodir);
Debug.Log ("EXPLODIU");
ExplosaoParticle.Emit(5);
GetComponent<AudioSource> ().PlayOneShot(ExplosaoAudio);
}
}
rafaelllsd- ProgramadorMaster
- PONTOS : 5242
REPUTAÇÃO : 507
Idade : 24
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
Ata, muito obrigado.
Você tem Facebook ?
Posso tirar algumas dúvidas rápidas com você...
Você tem Facebook ?
Posso tirar algumas dúvidas rápidas com você...
Sheyk- Avançado
- PONTOS : 3353
REPUTAÇÃO : 27
Idade : 25
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
Nesse que te passei, a pessoa que planto pode defusa '--'. nesse que fiz agora só o Player que estive com script de defuse, pode desarma a bomba!
C4:
Tenho face mais não uso muito só de vez enquando.
C4:
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class C4 : MonoBehaviour {
public Slider Barra;
private GameObject Player;
private bool podePlantar, Ativada;
public GameObject BombaPrefab;
private Transform Posicao;
public float TempoDeExplodir;
public ParticleSystem ExplosaoParticle;
public AudioClip ExplosaoAudio;
public static bool Defusar;
public static bool Distante;
public bool Teste;
void Start () {
Ativada = false;
Player = GameObject.FindWithTag ("Player");
Posicao = GameObject.FindWithTag ("Player"). transform;
}
// Update is called once per frame
void Update () {
Teste = Distante;
Physics.IgnoreCollision(BombaPrefab.GetComponent<Collider>(), GetComponent<Collider>());
if (Input.GetMouseButton (0) && podePlantar == true) {
Barra.gameObject.SetActive (true);
Barra.value += 2;
} else {
Barra.value = 0;
Barra.gameObject.SetActive (false);
}
if (Vector3.Distance (transform.position, Player.transform.position) < 5) {
Distante = true;
} else {
Distante = false;
}
if (Vector3.Distance (transform.position, Player.transform.position) < 5 && Ativada == false) {
podePlantar = true;
} else {
podePlantar = false;
}
if (Barra.value >= 300 && Ativada == false) {
Instantiate (BombaPrefab, Posicao.position, transform.rotation);
Barra.gameObject.SetActive (false);
Barra.value = 0;
Defusar = true;
podePlantar = false;
Ativada = true;
StartCoroutine ("TempoDaC4");
}
}
IEnumerator TempoDaC4 () {
yield return new WaitForSeconds (TempoDeExplodir);
Debug.Log ("EXPLODIU");
ExplosaoParticle.Emit(1);
GetComponent<AudioSource> ().PlayOneShot(ExplosaoAudio);
}
}
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Defusar : MonoBehaviour {
public Slider BarraDefuse;
void Start () {
}
// Update is called once per frame
void Update () {
if (C4.Defusar == true) {
if (Input.GetKey (KeyCode.E) && C4.Distante == true) {
BarraDefuse.gameObject.SetActive (true);
BarraDefuse.value -= 2;
} else {
BarraDefuse.value = 300;
BarraDefuse.gameObject.SetActive (false);
}
if (BarraDefuse.value <= 0) {
BarraDefuse.gameObject.SetActive (false);
C4.Defusar = false;
}
}
}
}
Tenho face mais não uso muito só de vez enquando.
rafaelllsd- ProgramadorMaster
- PONTOS : 5242
REPUTAÇÃO : 507
Idade : 24
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
E Para o outro player poder armar a bomba ?
Sheyk- Avançado
- PONTOS : 3353
REPUTAÇÃO : 27
Idade : 25
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
Como assim?
rafaelllsd- ProgramadorMaster
- PONTOS : 5242
REPUTAÇÃO : 507
Idade : 24
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
Bandidos ativa a C4 e policiais defusam
Sheyk- Avançado
- PONTOS : 3353
REPUTAÇÃO : 27
Idade : 25
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
Adiciona isto no script da C4:
Ladrão com Tag "Player"
Esqueci de colocar isto...
- Código:
private GameObject Player2;
void Start () {
Player2 = GameObject.FindWithTag ("Player2");
}
Na linha 36 Substitui por isto:
if (Vector3.Distance (transform.position, Player2.transform.position) < 5) {
Ladrão com Tag "Player"
Esqueci de colocar isto...
rafaelllsd- ProgramadorMaster
- PONTOS : 5242
REPUTAÇÃO : 507
Idade : 24
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.
Respeito as regras :
Re: [TUTORIAL] C4 - Plantar bomba.
Eu sugiro que você assista esses tutoriais do marcos!
https://www.schultzgames.com/t779-tutorial-aprenda-c-unity-5?highlight=aprenda+C
https://www.schultzgames.com/t779-tutorial-aprenda-c-unity-5?highlight=aprenda+C
rafaelllsd- ProgramadorMaster
- PONTOS : 5242
REPUTAÇÃO : 507
Idade : 24
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.
Respeito as regras :
Tópicos semelhantes
» [TUTORIAL] Tutorial Unity 3D Movimentação de Personagem com Botões UI
» Como implantar uma bomba com um personagem apertando uma tecla, estilo bomberman
» [TUTORIAL] Introdução para iniciante e tutorial de Click move com raycast
» [TUTORIAL] Tutorial criar game framework/engine do zero com JWJGL Java
» [TUTORIAL] Como spawnar inimigos [Tutorial simples]
» Como implantar uma bomba com um personagem apertando uma tecla, estilo bomberman
» [TUTORIAL] Introdução para iniciante e tutorial de Click move com raycast
» [TUTORIAL] Tutorial criar game framework/engine do zero com JWJGL Java
» [TUTORIAL] Como spawnar inimigos [Tutorial simples]
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos