Показать сообщение отдельно
Старый 27.04.2013, 23:22   #1590
timqha
AnyKey`щик
 
Аватар для timqha
 
Регистрация: 16.04.2013
Сообщений: 2
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Вопросы от новичка

показал бы пример своего скрипта с проблемой
Это скрипт поворота, он у меня отрабатывает только в левую сторону, а когда нажимаю вниз или вверх объект становится повернутым вверх.
public float speed 10.0F;
     public 
Transform target_left// привязываю к левой крайней стенке
     
public Transform target_right;// привязываю к правой крайней стенке
     
public Transform target_down;// привязываю к нижней крайней стенке
     
public Transform target_up;// привязываю к верхней крайней стенке
    
void Update() {
if (
Input.GetKey("w"))//up
        
{        
            
float step 1800 Time.deltaTime;
        
transform.rotation Quaternion.RotateTowards(transform.rotationtarget_up.rotationstep);
        }    
if (
Input.GetKey("s"))//down
        
{    
            
float step 1800 Time.deltaTime;
        
transform.rotation Quaternion.RotateTowards(transform.rotationtarget_down.rotationstep);
        }
if (
Input.GetKey("a"))//left
        
{
             
float step 1800 Time.deltaTime;
        
transform.rotation Quaternion.RotateTowards(transform.rotationtarget_left.rotationstep);
        }
if (
Input.GetKey("d"))//right
        
{
             
float step 1800 Time.deltaTime;
        
transform.rotation Quaternion.RotateTowards(transform.rotationtarget_right.rotationstep);
        } 
Скрипт перемещения пока отдельно.
public class Move_tank MonoBehaviour {
    public 
float speed 10.0F;
    
void Update() {
        
float translation Input.GetAxis("Vertical") * speed;
        
float vertranslation Input.GetAxis("Horizontal") * speed;
        
vertranslation*= Time.deltaTime;
        
translation *= Time.deltaTime;
if (
Input.GetKey("w"))//up
        
{    
            
transform.Translate(0translation0);
        }
if (
Input.GetKey("s"))//down
        
{    
            
transform.Translate(0translation0);
        }
if (
Input.GetKey("a"))//left
        
{
            
transform.Translate(vertranslation00);
        }
if (
Input.GetKey("d"))//right
        
{
            
transform.Translate(vertranslation00);
        }    
    }

я пока боюсь их соединять, чтоб ошибки одного не были ошибками другого.
(Offline)
 
Ответить с цитированием