Perde vida e CheckPoint?
3 participantes
Página 1 de 1
Perde vida e CheckPoint?
Bom dia amigos
Bom eu estou fazendo um joguinho para minha filha tipo Mario fiz um sistema de vida,maça e continue,
a cada 100 maças ele ganha uma vida, quando a vida chegar a 0 ele perde um continue e sua vida volta a atual que e 5
queriafazer com que cada vida que ele perde ele voltasse ao inicio ou ao CheckPoint que foi salvo.?
Bom eu estou fazendo um joguinho para minha filha tipo Mario fiz um sistema de vida,maça e continue,
a cada 100 maças ele ganha uma vida, quando a vida chegar a 0 ele perde um continue e sua vida volta a atual que e 5
queriafazer com que cada vida que ele perde ele voltasse ao inicio ou ao CheckPoint que foi salvo.?
Re: Perde vida e CheckPoint?
Não estou com muito tempo mas vou deixar aqui dois scripts de um sistema de checkpoint, tendo isso é só implementar no seu game e adicionar a parte que vai comandar as vidas e as maçãs
- checkpoint:
- Código:
using UnityEngine;
using System.Collections;
public class checkpoint : MonoBehaviour {
public enum state {Inactive,Active, Used,Locked };
public state status;
public checkpointHandler ch;
public Sprite[] sprites;
void Start (){
ch = GameObject.Find ("CheckpointHandler").GetComponent<checkpointHandler> ();
}
void Update()
{
ChangeColor ();
}
// Update is called once per frame
void ChangeColor () {
if (status == state.Inactive) {
GetComponent<SpriteRenderer>().sprite=sprites[0];
}
else if (status == state.Active) {
GetComponent<SpriteRenderer>().sprite=sprites[1];
}
else if (status == state.Used) {
GetComponent<SpriteRenderer>().sprite=sprites[2];
}
else if (status == state.Locked) {
GetComponent<SpriteRenderer>().sprite=sprites[3];
}
}
void OnTriggerEnter2D(Collider2D other)
{
if (other.tag == "Player") {
ch.UpdateCheckpoints(this.gameObject);
{
}
}
}
}
- checkpointhandler:
- Código:
using UnityEngine;
using System.Collections;
public class checkpointHandler : MonoBehaviour {
public GameObject player;
public GameObject spawn;
int index;
public enum Mode
{
Regular, Locked, Ordered
}
public Mode mode;
public GameObject[] checkpoints;
// Use this for initialization
void Start () {
if (mode != Mode.Ordered)
checkpoints = GameObject.FindGameObjectsWithTag ("checkpoint");
else
Debug.LogWarning ("Make Sure You filled the checkpoints array");
spawn=GameObject.Find("Spawn");
}
// Update is called once per frame
void Update () {
if (Input.GetKeyDown (KeyCode.R)) {
foreach (GameObject cp in checkpoints) {
if (cp.GetComponent<checkpoint> ().status == checkpoint.state.Active) {
player.transform.position= cp.transform.position;
return;
}
}
player.transform.position=spawn.transform.position;
}
}
public void UpdateCheckpoints(GameObject curCheck)
{
if (mode == Mode.Regular) {
foreach (GameObject cp in checkpoints) {
if (cp.GetComponent<checkpoint> ().status != checkpoint.state.Inactive) {
cp.GetComponent<checkpoint> ().status = checkpoint.state.Used;
}
}
curCheck.GetComponent<checkpoint> ().status = checkpoint.state.Active;
} else if (mode == Mode.Locked && curCheck.GetComponent<checkpoint> ().status != checkpoint.state.Locked) {
foreach (GameObject cp in checkpoints) {
if (cp != curCheck && cp.GetComponent<checkpoint> ().status != checkpoint.state.Inactive) {
cp.GetComponent<checkpoint> ().status = checkpoint.state.Locked;
}
}
curCheck.GetComponent<checkpoint> ().status = checkpoint.state.Active;
} else if (mode == Mode.Ordered && index<checkpoints.Length && curCheck == checkpoints[index] ) {
foreach (GameObject cp in checkpoints) {
if (cp.GetComponent<checkpoint> ().status != checkpoint.state.Inactive) {
cp.GetComponent<checkpoint> ().status = checkpoint.state.Locked;
}
}
curCheck.GetComponent<checkpoint> ().status = checkpoint.state.Active;
index++;
}
}
}
- Playlist de vídeos do youtube de onde peguei os scripts:
- https://www.youtube.com/playlist?list=PLQzQtnB2ciXQ8HYOo8NWJMKzqh5fQN_Um
Madness- Designer
- PONTOS : 3613
REPUTAÇÃO : 222
Áreas de atuação : Designer
Iniciante C++
Quase um programador C#
Respeito as regras :
Re: Perde vida e CheckPoint?
Nao consegui ver os videos para enteder para eu fazer meu sistema como esse, estou com uns probleminhas aqui com a net por isso nao vi os videos eu acho que so quinta,
esse e meu script queria fazer com que ele perde uma vida ele destroi-se e aparecesse nu inicil e depois nos checkpoints?
esse e meu script queria fazer com que ele perde uma vida ele destroi-se e aparecesse nu inicil e depois nos checkpoints?
- Código:
using UnityEngine;
using System.Collections;
public class Dados : MonoBehaviour {
public int Life = 5;
public int macas = 0;
public int continues = 3;
void Start (){
}
void Update()
{
if(macas >= 100){//oletou 100 maças
GanharLife ();
}
if(Life <= 0){//Quando perdeu todas vidas
UsarContinue();
}
}
void GanharLife () {//Ganhou uma vida
Life = Life + 1;
macas = 0;
}
void UsarContinue(){//Usou continue
continues = continues - 1;
Life = Life;
}
}
Re: Perde vida e CheckPoint?
Eu pensei em usar esse sistema mais ele tinha que colocar o objeto Respawn no lugar do checkpoint para o player instanciar lá
Coloquei um gatinho bool para fazer o player morrer , ele colidiu com enemy ou bombas ele
Perde uma vida e faz uma animação de morte
Eu destruo e ele instanciar no Respal
Coloquei um gatinho bool para fazer o player morrer , ele colidiu com enemy ou bombas ele
Perde uma vida e faz uma animação de morte
Eu destruo e ele instanciar no Respal
Re: Perde vida e CheckPoint?
Boa noite amigos
Bom eu vou colocar os scripts
Script Respaw e Checkpoint
Nesse do respawn quando o jogo iniciar o player e instanciado quando ele morre no script de vida ativa o bool respawnplayer e destroi o player e intancia novamente o player mais ele so esta ficando no local inicial?
ja montei desmontei esses script nao tive nenhuma ideia ainda
Bom eu vou colocar os scripts
Script Respaw e Checkpoint
Nesse do respawn quando o jogo iniciar o player e instanciado quando ele morre no script de vida ativa o bool respawnplayer e destroi o player e intancia novamente o player mais ele so esta ficando no local inicial?
ja montei desmontei esses script nao tive nenhuma ideia ainda
- Código:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.SceneManagement;
public class PlayerSpawner : MonoBehaviour{
public GameObject player;
public static bool respawnPlayer = false;
void Awake (){
transform.tag = "RespawnPlayer";
}
void Start(){
Instantiate(player,transform.position,transform.rotation);
}
void Update (){
if(respawnPlayer == true){
Respawnar();
}
}
void Respawnar(){
respawnPlayer = false;
Instantiate(player,transform.position,transform.rotation);
}
}
- Código:
using UnityEngine;
using System.Collections;
public class CheckPoint : MonoBehaviour {
public int ID;
public static int checkPointID;
void Start(){
if(PlayerPrefs.HasKey("CheckPointID")){
checkPointID = PlayerPrefs.GetInt("CheckPointID");
}
}
public void OnTriggerEnter(Collider other){
if(other.tag == "Player"){
if(checkPointID <= ID){
checkPointID = ID;
PlayerPrefs.SetInt("CheckPointID", checkPointID);
}
}
}
}
Re: Perde vida e CheckPoint?
Bom dia amigos
Estou tentando e quan Player passar pelo Checkpoint o RespawnPlayer fica na posiçao do tal Checkpoint.
Estou tentando e quan Player passar pelo Checkpoint o RespawnPlayer fica na posiçao do tal Checkpoint.
Tópicos semelhantes
» fazer o player perde vida e sua barra de vida descer conforme o dano
» checkpoint
» CheckPoint & Respawn
» [RESOLVIDO] Problema na hora de retirar vida do inimgo, tb remove a vida do player.
» Como faço uma imagem com tamanho variado sem perde qualidade
» checkpoint
» CheckPoint & Respawn
» [RESOLVIDO] Problema na hora de retirar vida do inimgo, tb remove a vida do player.
» Como faço uma imagem com tamanho variado sem perde qualidade
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos