Показать сообщение отдельно
Старый 17.02.2013, 13:02   #11
SGREED
ПроЭктировщик
 
Аватар для SGREED
 
Регистрация: 05.02.2013
Сообщений: 149
Написано одно полезное сообщение
Ответ: Управление wasd

Как здесь правильно сделать что когда нажимаешь налево и вправо игрок и сам поворачивался?
[RequireComponent ( typeof( CharacterController ))] 
public class 
moves : MonoBehaviour { 
         public 
float moveSpeed; 
         public 
float backSpeed; 
         public 
float strafeSpeed; 
         public 
string goForward; 
         public 
string goBack; 
         public 
string goLeft; 
         public 
string goRight; 
          
         private 
Transform _myTransform; 
         private 
CharacterController _controller; 
          
         public 
void Awake (){ 
                 
_myTransform = transform; 
                 
_controller = GetComponent<CharacterController>(); 
         } 
          
         
void Start () {  
                 
moveSpeed = 7.0f; 
                 
backSpeed = moveSpeed / 2; 
                 
strafeSpeed = moveSpeed / 2; 
                 
goForward = "w"; 
                 
goBack = "s"; 
                 
goLeft = "a"; 
                 
goRight = "d"; 

         } 
          
         
void Update () { 
                 
Walk(); 
                 
Strafe(); 
         } 
          
         private 
void Walk (){ 
                 if( 
Input.GetKey( goForward )) _controller.SimpleMove(_myTransform.TransformDirection( Vector3.forward ) * moveSpeed); 
                 if( 
Input.GetKey( goBack )) _controller.SimpleMove(_myTransform.TransformDirection( Vector3.forward ) * -backSpeed); 
         } 
          
         private 
void Strafe (){ 
                 if( 
Input.GetKey( goLeft )) _controller.SimpleMove(_myTransform.TransformDirection( Vector3.right ) * -strafeSpeed); 
                 if( 
Input.GetKey( goRight )) _controller.SimpleMove(_myTransform.TransformDirection( Vector3.right ) * strafeSpeed); 
         } 
} 
(Offline)
 
Ответить с цитированием