LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
4 participantes
Página 1 de 1
LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
Opa e aí pessoal, tudo bem com vocês? to com um probleminha (mais um kkk) como meu jogo é de terror o player tem uma lanterna claro, pra ligar e desligar eu aperto o botão esquerdo do mouse, so que quando dou pausa que eu aperto em qq canto da tela a lanterna continua la ligando e desligando, mas era pra ta pausado kk se alguém tiver ideia de como resolver ae vai ajudar bastanteeeee. vllwwww
MeverPlays- Mestre
- PONTOS : 3870
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
Basta criar uma condição, perguntando se o script está pausado ou não...
No script da lanterna, você terá que acessar o script de Pause e pedir para ele se ele está com "pause" ativado ou não.
Você precisa postar os 2 scripts ai, o da lanterna e o do pause
No script da lanterna, você terá que acessar o script de Pause e pedir para ele se ele está com "pause" ativado ou não.
Você precisa postar os 2 scripts ai, o da lanterna e o do pause
Re: LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
ou faz um if no script da lanterna pra qnd vc apertar a tecla pause a lanterna para de gastar
anizioNoob- Avançado
- PONTOS : 3479
REPUTAÇÃO : 17
Idade : 22
Áreas de atuação : Sei programar animators, e modelar no sketchup
Respeito as regras :
Re: LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
Mas ela para de gastar mano, so que continua podendo ligar e desligar a lanterna, msm estando pausado.anizioNoob escreveu:ou faz um if no script da lanterna pra qnd vc apertar a tecla pause a lanterna para de gastar
MeverPlays- Mestre
- PONTOS : 3870
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
Como o marcos disse basta criar uma condição para saber se esta pausado ou não
Weslley- Moderador
- PONTOS : 5729
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
Aqui estão os scripts da
Lanterna:
e o Menu de pausa:
Lanterna:
- Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(AudioSource))]
public class Lanterna : MonoBehaviour {
public static float Carga;
public int CargaMaxima = 1000;
private bool PodeLigar,Aviso;
public Font Fonte;
public AudioClip audioLanterna;
void Start (){
Aviso = true;
Carga = CargaMaxima;
}
void Update () {
if (Input.GetKeyDown (KeyCode.Mouse0) && PodeLigar == true) {
Aviso = false;
GetComponent<AudioSource>().PlayOneShot(audioLanterna);
if(GetComponent<Light>().enabled == true){
GetComponent<Light>().enabled = false;
}else if(GetComponent<Light>().enabled == false){
GetComponent<Light>().enabled = true;
}
}
if (PodeLigar == false) {
GetComponent<Light>().enabled = false;
}
if (GetComponent<Light>().enabled == true) {
Carga -= Time.deltaTime;
}
if (Carga <= 0) {
PodeLigar = false;
} else if (Carga > 0) {
PodeLigar = true;
}
if (Carga >= CargaMaxima) {
Carga = CargaMaxima;
}
//PARAMETROS DA LUZ
GetComponent<Light>().intensity = 1 + 2*Carga / CargaMaxima;
GetComponent<Light>().range = 4 + 16*Carga / CargaMaxima;
}
void OnGUI (){
GUI.skin.font = Fonte;
GUI.skin.label.fontSize = Screen.height/20;
if (Aviso == true) {
GUI.Label (new Rect (Screen.width / 2 - Screen.width / 5, Screen.height / 2 - Screen.height / 16, Screen.width / 2.5f, Screen.height / 8), "");
}
}
}
e o Menu de pausa:
- Código:
var mainMenuSceneName : String;
var pauseMenuFont : Font;
private var pauseEnabled = false;
function Start(){
pauseEnabled = false;
Time.timeScale = 1;
AudioListener.volume = 1;
Cursor.visible = false;
}
function Update(){
//check if pause button (escape key) is pressed
if(Input.GetKeyDown("escape")){
//check if game is already paused
if(pauseEnabled == true){
//unpause the game
pauseEnabled = false;
Time.timeScale = 1;
AudioListener.volume = 1;
Cursor.visible = false;
}
//else if game isn't paused, then pause it
else if(pauseEnabled == false){
pauseEnabled = true;
AudioListener.volume = 0;
Time.timeScale = 0;
Cursor.visible = true;
}
}
}
private var showGraphicsDropDown = false;
function OnGUI(){
GUI.skin.box.font = pauseMenuFont;
GUI.skin.button.font = pauseMenuFont;
if(pauseEnabled == true){
//Make a background box
GUI.Box(Rect(Screen.width /2 - 100,Screen.height /2 - 100,250,200), "JOGO PAUSADO");
//Make Main Menu button
if(GUI.Button(Rect(Screen.width /2 - 100,Screen.height /2 - 50,250,50), "Menu Principal")){
Application.LoadLevel("MainMenu");
}
//Make Change Graphics Quality button
if(GUI.Button(Rect(Screen.width /2 - 100,Screen.height /2 ,250,50), "Qualidade Grafica")){
if(showGraphicsDropDown == false){
showGraphicsDropDown = true;
}
else{
showGraphicsDropDown = false;
}
}
//Create the Graphics settings buttons, these won't show automatically, they will be called when
//the user clicks on the "Change Graphics Quality" Button, and then dissapear when they click
//on it again....
if(showGraphicsDropDown == true){
if(GUI.Button(Rect(Screen.width /2 + 150,Screen.height /2 ,200,50), "Otimizada")){
QualitySettings.currentLevel = QualityLevel.Fastest;
}
if(GUI.Button(Rect(Screen.width /2 + 150,Screen.height /2 + 50,200,50), "Baixa")){
QualitySettings.currentLevel = QualityLevel.Fast;
}
if(GUI.Button(Rect(Screen.width /2 + 150,Screen.height /2 + 100,200,50), "Media")){
QualitySettings.currentLevel = QualityLevel.Simple;
}
if(GUI.Button(Rect(Screen.width /2 + 150,Screen.height /2 + 150,200,50), "Boa")){
QualitySettings.currentLevel = QualityLevel.Good;
}
if(GUI.Button(Rect(Screen.width /2 + 150,Screen.height /2 + 200,200,50), "Alta")){
QualitySettings.currentLevel = QualityLevel.Beautiful;
}
if(GUI.Button(Rect(Screen.width /2 + 150,Screen.height /2 + 250,200,50), "Ultra")){
QualitySettings.currentLevel = QualityLevel.Fantastic;
}
if(Input.GetKeyDown("escape")){
showGraphicsDropDown = false;
}
}
//Make quit game button
if (GUI.Button (Rect (Screen.width /2 - 100,Screen.height /2 + 50,250,50), "Sair do Jogo")){
Application.Quit();
}
}
}
MeverPlays- Mestre
- PONTOS : 3870
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
diga jovem padawan, por que java? o que fizestes para aderir a esta seita?
Re: LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
Marcos, não estou mais usando aquele script do menu de pausa, agr estou usando esse que tbm foi vc q fez. será que agr da pra resolver isso da lanterna? tentei nesse script tbm mas tbm não consegui.
Menu Pause:
e o da lanterna:
Menu Pause:
- Código:
using UnityEngine;
using System.Collections;
public class MenuPausa : MonoBehaviour {
private bool JanelaDosGraficos,botoesPrincipais;
private float VOLUME,SENSIBILIDADE;
public float minimoVOLUME = 0.5f,maximoVOLUME = 20,minimoSENS = 1,maximoSENS = 15;
public GUISkin minhaSkin;
public Texture RESOLUCOES,SensibilidadeMouse,QUALIDADE,Volumes,ModoJanela;
void Update (){
AudioListener.volume = VOLUME;
if (Input.GetKeyDown ("escape")) {
if (MouseLook.PodeMover == true) {
MouseLook.PodeMover = false;
AudioListener.volume = 0;
Time.timeScale = 0;
Cursor.visible = true;
botoesPrincipais = true;
} else if (MouseLook.PodeMover == false) {
MouseLook.PodeMover = true;
AudioListener.volume = 1;
Time.timeScale = 1;
Cursor.visible = false;
botoesPrincipais = false;
}
}
}
void Start(){
Time.timeScale = 1;
AudioListener.volume = 1;
Cursor.visible = false;
botoesPrincipais = false;
//==================== PREFERENCIAS =====================//
if (PlayerPrefs.HasKey ("VOLUME")) {
VOLUME = PlayerPrefs.GetFloat ("VOLUME");
} else {
PlayerPrefs.SetFloat ("VOLUME", VOLUME);
}
if (PlayerPrefs.HasKey ("SENSIBILIDADE")) {
SENSIBILIDADE = PlayerPrefs.GetFloat ("SENSIBILIDADE");
} else {
PlayerPrefs.SetFloat ("SENSIBILIDADE", SENSIBILIDADE);
}
}
void OnGUI(){
if (MouseLook.PodeMover == false) {
GUI.skin = minhaSkin;
//====================== PARTE PRINCIPAL DO MENU ============================//
if (botoesPrincipais == true) {
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2 - Screen.height / 8, Screen.width / 8, Screen.height / 14), "VOLTAR")) {
MouseLook.PodeMover = true;
Time.timeScale = 1;
Cursor.visible = false;
botoesPrincipais = false;
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2 - Screen.height / 28, Screen.width / 8, Screen.height / 14), "QUALIDADE GRAFICA")) {
if (JanelaDosGraficos == false) {
JanelaDosGraficos = true;
} else {
JanelaDosGraficos = false;
}
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2 + Screen.height / 18, Screen.width / 8, Screen.height / 14), "SAIR")) {
Application.Quit ();
}
}
//====================== PARTE GRAFICA DO MENU ============================//
if (JanelaDosGraficos == true) {
botoesPrincipais = false;
//BOTOES
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 2.2f, Screen.height / 2 + Screen.height / 3, Screen.width / 8, Screen.height / 14), "VOLTAR")) {
JanelaDosGraficos = false;
botoesPrincipais = true;
}
if (GUI.Button (new Rect (Screen.width / 2 + Screen.width / 5, Screen.height / 2 - Screen.height / 4, Screen.width / 8, Screen.height / 14), "JANELA")) {
Screen.fullScreen = !Screen.fullScreen;
}
// SALVAR PREFERENCIAS
if (GUI.Button (new Rect (Screen.width / 2 + Screen.width / 5, Screen.height / 2 + Screen.height / 3, Screen.width / 8, Screen.height / 14), "SALVAR PREF.")) {
PlayerPrefs.SetFloat ("VOLUME", VOLUME);
PlayerPrefs.SetFloat ("SENSIBILIDADE", SENSIBILIDADE);
}
// BARRAS HORIZONTAIS
VOLUME = GUI.HorizontalSlider (new Rect (Screen.width / 2 + Screen.width / 5, Screen.height / 2, Screen.width / 8, Screen.height / 14), VOLUME, minimoVOLUME, maximoVOLUME);
SENSIBILIDADE = GUI.HorizontalSlider (new Rect (Screen.width / 2 + Screen.width / 5, Screen.height / 2 + Screen.height / 5, Screen.width / 8, Screen.height / 14), SENSIBILIDADE, minimoSENS, maximoSENS);
//=============================== PARTE GRAFICA QUALIDADES ============================//
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 3, Screen.height / 2 - Screen.height / 4, Screen.width / 8, Screen.height / 14), "PESSIMO")) {
QualitySettings.SetQualityLevel (0);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 3, Screen.height / 2 - Screen.height / 6, Screen.width / 8, Screen.height / 14), "RUIM")) {
QualitySettings.SetQualityLevel (1);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 3, Screen.height / 2 - Screen.height / 12, Screen.width / 8, Screen.height / 14), "SIMPLES")) {
QualitySettings.SetQualityLevel (2);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 3, Screen.height / 2, Screen.width / 8, Screen.height / 14), "BOM")) {
QualitySettings.SetQualityLevel (3);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 3, Screen.height / 2 + Screen.height / 12, Screen.width / 8, Screen.height / 14), "BONITO")) {
QualitySettings.SetQualityLevel (4);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 3, Screen.height / 2 + Screen.height / 6, Screen.width / 8, Screen.height / 14), "FANTASTICO")) {
QualitySettings.SetQualityLevel (5);
}
//=============================== PARTE GRAFICA RESOLUÇOES ============================//
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2 - Screen.height / 4, Screen.width / 8, Screen.height / 14), "640x480")) {
Screen.SetResolution (640, 480, true);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2 - Screen.height / 6, Screen.width / 8, Screen.height / 14), "800x600")) {
Screen.SetResolution (800, 600, true);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2 - Screen.height / 12, Screen.width / 8, Screen.height / 14), "1024x768")) {
Screen.SetResolution (1024, 768, true);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2, Screen.width / 8, Screen.height / 14), "1280x720")) {
Screen.SetResolution (1280, 720, true);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2 + Screen.height / 12, Screen.width / 8, Screen.height / 14), "1280x800")) {
Screen.SetResolution (1280, 800, true);
}
if (GUI.Button (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2 + Screen.height / 6, Screen.width / 8, Screen.height / 14), "1366x768")) {
Screen.SetResolution (1366, 768, true);
}
GUI.DrawTexture (new Rect (Screen.width / 2 - Screen.width / 3, Screen.height / 2 - Screen.height / 2.5f, Screen.width / 8, Screen.height / 14), QUALIDADE);
GUI.DrawTexture (new Rect (Screen.width / 2 - Screen.width / 16, Screen.height / 2 - Screen.height / 2.5f, Screen.width / 8, Screen.height / 14),RESOLUCOES);
GUI.DrawTexture (new Rect (Screen.width / 2 + Screen.width / 5, Screen.height / 2 - Screen.height / 2.5f, Screen.width / 8, Screen.height / 14), ModoJanela);
GUI.DrawTexture (new Rect (Screen.width / 2 + Screen.width / 5, Screen.height / 2 - Screen.height / 10, Screen.width / 8, Screen.height / 14), Volumes);
GUI.DrawTexture (new Rect (Screen.width / 2 + Screen.width / 5, Screen.height / 2 + Screen.height / 10, Screen.width / 8, Screen.height / 14), SensibilidadeMouse);
}
}
}
}
e o da lanterna:
- Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(AudioSource))]
public class Lanterna : MonoBehaviour {
public static float Carga;
public int CargaMaxima = 1000;
private bool PodeLigar,Aviso;
public Font Fonte;
public AudioClip audioLanterna;
void Start (){
Aviso = true;
Carga = CargaMaxima;
}
void Update () {
if (Input.GetKeyDown (KeyCode.Mouse0) && PodeLigar == true) {
Aviso = false;
GetComponent<AudioSource>().PlayOneShot(audioLanterna);
if(GetComponent<Light>().enabled == true){
GetComponent<Light>().enabled = false;
}else if(GetComponent<Light>().enabled == false){
GetComponent<Light>().enabled = true;
}
}
if (PodeLigar == false) {
GetComponent<Light>().enabled = false;
}
if (GetComponent<Light>().enabled == true) {
Carga -= Time.deltaTime;
}
if (Carga <= 0) {
PodeLigar = false;
} else if (Carga > 0) {
PodeLigar = true;
}
if (Carga >= CargaMaxima) {
Carga = CargaMaxima;
}
//PARAMETROS DA LUZ
GetComponent<Light>().intensity = 1 + 2*Carga / CargaMaxima;
GetComponent<Light>().range = 4 + 16*Carga / CargaMaxima;
}
void OnGUI (){
GUI.skin.font = Fonte;
GUI.skin.label.fontSize = Screen.height/20;
if (Aviso == true) {
GUI.Label (new Rect (Screen.width / 2 - Screen.width / 5, Screen.height / 2 - Screen.height / 16, Screen.width / 2.5f, Screen.height / 8), "");
}
}
}
MeverPlays- Mestre
- PONTOS : 3870
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: LANTERNA CONTINUA FUNCIONANDO MSM COM O JOGO PAUSADO
Vou continuar pregando eternamente o bom uso da UI, mas tente usar este script para a sua lanterna:
- Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(AudioSource))]
public class Lanterna : MonoBehaviour {
public static float Carga;
public int CargaMaxima = 1000;
private bool PodeLigar,Aviso;
public Font Fonte;
public AudioClip audioLanterna;
void Start (){
Aviso = true;
Carga = CargaMaxima;
}
void Update () {
if (Input.GetKeyDown (KeyCode.Mouse0) && PodeLigar == true && Time.timeScale > 0.1f) {
Aviso = false;
GetComponent<AudioSource>().PlayOneShot(audioLanterna);
if(GetComponent<Light>().enabled == true){
GetComponent<Light>().enabled = false;
}else if(GetComponent<Light>().enabled == false){
GetComponent<Light>().enabled = true;
}
}
if (PodeLigar == false) {
GetComponent<Light>().enabled = false;
}
if (GetComponent<Light>().enabled == true) {
Carga -= Time.deltaTime;
}
if (Carga <= 0) {
PodeLigar = false;
} else if (Carga > 0) {
PodeLigar = true;
}
if (Carga >= CargaMaxima) {
Carga = CargaMaxima;
}
//PARAMETROS DA LUZ
GetComponent<Light>().intensity = 1 + 2*Carga / CargaMaxima;
GetComponent<Light>().range = 4 + 16*Carga / CargaMaxima;
}
void OnGUI (){
GUI.skin.font = Fonte;
GUI.skin.label.fontSize = Screen.height/20;
if (Aviso == true) {
GUI.Label (new Rect (Screen.width / 2 - Screen.width / 5, Screen.height / 2 - Screen.height / 16, Screen.width / 2.5f, Screen.height / 8), "");
}
}
}
Tópicos semelhantes
» COMO COLOCO LANTERNA DE LED NO MEU JOGO DE BUS
» Bug na hora de pegar o component na lanterna no jogo de terror.
» Objeto não continua associado
» Estou com problemas na iluminação da minha Lanterna (jogo de terror)
» Como criar um sistema de papeis que podem ser lidos!?
» Bug na hora de pegar o component na lanterna no jogo de terror.
» Objeto não continua associado
» Estou com problemas na iluminação da minha Lanterna (jogo de terror)
» Como criar um sistema de papeis que podem ser lidos!?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos