[RESOLVIDO]Flip network
3 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO]Flip network
To fazendo um jogo 2D online, como eu poderia fazer para que quando faça o Flip o outro jogador veja o personagem mudando a escala de 1 para -1 ou -1 para 1
Lteo- Avançado
- PONTOS : 2967
REPUTAÇÃO : 27
Idade : 24
Áreas de atuação : Desenvolvedor web
Respeito as regras :
Lteo- Avançado
- PONTOS : 2967
REPUTAÇÃO : 27
Idade : 24
Áreas de atuação : Desenvolvedor web
Respeito as regras :
Re: [RESOLVIDO]Flip network
Ficar spammando igual idiota não vai fazer com que alguém te ajude, tenha calma
Madness- Designer
- PONTOS : 3609
REPUTAÇÃO : 222
Áreas de atuação : Designer
Iniciante C++
Quase um programador C#
Respeito as regras :
Re: [RESOLVIDO]Flip network
Eu consegui, nao sei como mas consegui, se alguem quiser saber como, ta aí
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class Player : NetworkBehaviour {
private Rigidbody2D _MyRigidbdoy;
private float _SpeedMove = 5;
public static bool _FacingRight;
public GameObject _BulletPrefab;
public Transform _BulletSpawn;
// Use this for initialization
void Start () {
_MyRigidbdoy = GetComponent<Rigidbody2D> ();
_FacingRight = true;
}
// Update is called once per frame
void FixedUpdate () {
if (!isLocalPlayer) {
return;
}
float _Horizontal = Input.GetAxis ("Horizontal");
HandleMovement (_Horizontal);
CmdFlip (_Horizontal);
if (Input.GetKeyDown (KeyCode.Space)) {
CmdFire ();
}
}
void HandleMovement(float _Horizontal){
_MyRigidbdoy.velocity = new Vector2 (_Horizontal * _SpeedMove, _MyRigidbdoy.velocity.y);
}
[Command]
void CmdFlip(float _Horizontal){
if (_Horizontal > 0 && !_FacingRight || _Horizontal < 0 && _FacingRight) {
_FacingRight = !_FacingRight;
Vector3 _TheScale = transform.localScale;
_TheScale.x *= -1;
transform.localScale = _TheScale;
RpcFlip (_Horizontal);
}
}
[ClientRpc]
void RpcFlip(float _Horizontal){
if (_Horizontal > 0 && !_FacingRight || _Horizontal < 0 && _FacingRight) {
_FacingRight = !_FacingRight;
Vector3 _TheScale = transform.localScale;
_TheScale.x *= -1;
transform.localScale = _TheScale;
}
}
[Command]
void CmdFire(){
var _Bullet = (GameObject)Instantiate(
_BulletPrefab,
_BulletSpawn.position,
_BulletSpawn.rotation);
if (_FacingRight)
_Bullet.GetComponent<Rigidbody2D> ().velocity = _Bullet.transform.right * 6;
else
_Bullet.GetComponent<Rigidbody2D> ().velocity = _Bullet.transform.right * -6;
NetworkServer.Spawn (_Bullet);
Destroy(_Bullet, 2.0f);
}
public override void OnStartLocalPlayer()
{
GetComponent<SpriteRenderer> ().color = Color.red;
}
}
Lteo- Avançado
- PONTOS : 2967
REPUTAÇÃO : 27
Idade : 24
Áreas de atuação : Desenvolvedor web
Respeito as regras :
Re: [RESOLVIDO]Flip network
Quando for colocar códigos use o "SCRIPT" para colocar códigos,o mesmo será colocado dentro de um.
Tópicos semelhantes
» [RESOLVIDO] network transform e network identity nos objetos filhos
» [RESOLVIDO] Photon Network
» [RESOLVIDO] Network Unity5
» Flip Personagem
» Como fazer o Tiro do "INIMIGO" seguir o Flip de uma Arma ?
» [RESOLVIDO] Photon Network
» [RESOLVIDO] Network Unity5
» Flip Personagem
» Como fazer o Tiro do "INIMIGO" seguir o Flip de uma Arma ?
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos