Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Общие вопросы

Общие вопросы вопросы не попадающие ни в один из доступных разделов

Ответ
 
Опции темы
Старый 09.04.2013, 17:11   #1
mepihin
ПроЭктировщик
 
Регистрация: 31.12.2012
Сообщений: 165
Написано 5 полезных сообщений
(для 7 пользователей)
[C#] mepihin вопросы

  1. Перед ввыходом игрок должен встать...
Вот у меня есть скрипт:
using UnityEngine;
using System.Collections;

public class 
Sit MonoBehaviour {
    
    [
HideInInspector]public bool issit false;
    [
HideInInspector]public CharacterController controller;
    private 
CharacterMotor motor;
    
    
void Start()
    {
        
controller transform.GetComponent<CharacterController>();
        
motor GetComponent<CharacterMotor>();
    }
    
    
void Update()
    {
            if(
Input.GetKey(KeyCode.LeftControl) && issit == false)
            { 
                
issit true
                
controller.height 1
                
motor.movement.maxForwardSpeed 2;
            }
            else if(
Input.GetKeyUp(KeyCode.LeftControl) && issit == true)
            { 
                
transform.position = new Vector3(transform.position.x,transform.position.y+0.5f,transform.position.z); 
                
issit false
                
controller.height 2
                
motor.movement.maxForwardSpeed 4;
            }
    }
    
    
void OnApplicationQuit()
    {
        
issit false;
        
controller.height 2;
    }
    

Когда я выхожу из игры присев, то игрок появляется уже под картой. Хотя я сделал чтобы он вставал, но все равно не работает. Что сделать?
(Offline)
 
Ответить с цитированием
Старый 09.04.2013, 17:22   #2
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: [C#] mepihin вопросы

У тебя какое-то сохранение работает в игре?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 09.04.2013, 17:33   #3
mepihin
ПроЭктировщик
 
Регистрация: 31.12.2012
Сообщений: 165
Написано 5 полезных сообщений
(для 7 пользователей)
Ответ: [C#] mepihin вопросы

Сообщение от pax Посмотреть сообщение
У тебя какое-то сохранение работает в игре?
Да есть скрипт, который сохраняет позицию игрока перед выходом из игры также, но он на JS
(Offline)
 
Ответить с цитированием
Старый 09.04.2013, 17:39   #4
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: [C#] mepihin вопросы

В общем OnApplicationQuit срабатывает на всех скриптах в произвольном порядке. В скрипте сохранения восстанавливай позицию, иначе ничего не получится.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 09.04.2013, 17:46   #5
mepihin
ПроЭктировщик
 
Регистрация: 31.12.2012
Сообщений: 165
Написано 5 полезных сообщений
(для 7 пользователей)
Ответ: [C#] mepihin вопросы

Сообщение от pax Посмотреть сообщение
В общем OnApplicationQuit срабатывает на всех скриптах в произвольном порядке. В скрипте сохранения восстанавливай позицию, иначе ничего не получится.
Я решил переписать скрипт сохранения, так вот, скажите как это условие переписать:
if(PlayerPrefs.GetFloat("PlayerX") && PlayerPrefs.GetFloat("PlayerY") && PlayerPrefs.GetFloat("PlayerZ")) 
Пишет:
Assets/Data/Scripts/Player/Save.cs(19,32): error CS0019: Operator `&&' cannot be applied to operands of type `float' and `float'
Условие делает так: если есть такая переменная в реестре, то выполняем блок программы... А вот C# жалуется
(Offline)
 
Ответить с цитированием
Старый 09.04.2013, 17:52   #6
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: [C#] mepihin вопросы

Попробую быть экстрасенсом
if(PlayerPrefs.HasKey("PlayerX") && PlayerPrefs.HasKey("PlayerY") && PlayerPrefs.HasKey("PlayerZ")) 
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mepihin (09.04.2013)
Старый 09.04.2013, 17:55   #7
mepihin
ПроЭктировщик
 
Регистрация: 31.12.2012
Сообщений: 165
Написано 5 полезных сообщений
(для 7 пользователей)
Ответ: [C#] mepihin вопросы

Сообщение от pax Посмотреть сообщение
Попробую быть экстрасенсом
if(PlayerPrefs.HasKey("PlayerX") && PlayerPrefs.HasKey("PlayerY") && PlayerPrefs.HasKey("PlayerZ")) 
Не работает так, то есть он пишет что не может быть && между float, а мне надо сделать проверку на то, есть ли переменная в реестре

Ой, спасибо, необратил внимания на HasKey

Баг тоже убрал, спасибо
(Offline)
 
Ответить с цитированием
Старый 09.04.2013, 21:38   #8
mepihin
ПроЭктировщик
 
Регистрация: 31.12.2012
Сообщений: 165
Написано 5 полезных сообщений
(для 7 пользователей)
Ответ: [C#] mepihin вопросы

Что это за ошибка??
Terrain splat 2 is null.
(Offline)
 
Ответить с цитированием
Старый 10.04.2013, 07:05   #9
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: [C#] mepihin вопросы

удалил траву?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 10.04.2013, 18:58   #10
mepihin
ПроЭктировщик
 
Регистрация: 31.12.2012
Сообщений: 165
Написано 5 полезных сообщений
(для 7 пользователей)
Ответ: [C#] mepihin вопросы

Сообщение от pax Посмотреть сообщение
удалил траву?
Нет, просто начал рисовать, расставлять камни и вот выскочила
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 08:15.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com