Результаты поиска
|
|
Adom | Дата: Вторник, 06 Августа 2013, 21:05 | Сообщение # 661 | Тема: Камера в мультиплеере. |
Печенька!
Сейчас нет на сайте
| Все теперь я знаю в чем проблема проблема в камере Она у меня дергаеться и из-за этого мы не можем нормально играть
|
|
| |
Adom | Дата: Вторник, 06 Августа 2013, 19:41 | Сообщение # 662 | Тема: Камера в мультиплеере. |
Печенька!
Сейчас нет на сайте
| А да у меня спавн в одном месте и как сделать чтобы его не выкидывало?И я не пойму с transform.position+=transform.forward сделать движение вправо.И извини за мою глупость )))
|
|
| |
Adom | Дата: Вторник, 06 Августа 2013, 19:25 | Сообщение # 663 | Тема: Камера в мультиплеере. |
Печенька!
Сейчас нет на сайте
| EchoIT,Ага вот а это поможет с проблемой управления ?
|
|
| |
Adom | Дата: Вторник, 06 Августа 2013, 18:34 | Сообщение # 664 | Тема: Камера в мультиплеере. |
Печенька!
Сейчас нет на сайте
| Эмм наверное проблема в Translate когда ко мне подключается игрок то его выкидывает вверх а у меня все дергаеться показываеться то его вид из камеры то мой вид.Не знаю что делать помогите ? EchoIT,И как это исправить чтобы работало в мультиплеере ?
|
|
| |
Adom | Дата: Вторник, 06 Августа 2013, 17:32 | Сообщение # 665 | Тема: Магазин - инвентарь |
Печенька!
Сейчас нет на сайте
| Помогите я сделал магазин и сделал инвентарь так вот я мне нужно допустим если я в магазине купил аптечку и здровоье равно 100 то аптечка сразу идет в инвентарь так вот мне нужно чтобы аптечек было ровно столько сколько на это было потрачено денег ну если потратил 10 денег то в инвентаре 10 аптечек.Ну как то так вот скрипты которые я использую надеюсь поможет
Код using UnityEngine; using System.Collections;
public class Inventar : MonoBehaviour { public int HP; public int AR; public bool show = false; public MouseLook cam; public ControllerD Player; public GUISkin skin; public float MaxMass = 50f; public float CurMass = 0f; public Rect HPRect; public Transform Xp; public Rect InventoryRect; public Transform Money; public Transform SHOP; // Use this for initialization void Start () {
}
// Update is called once per frame void Update () { if(Input.GetKeyDown(KeyCode.T)){ show =!show; if(show){ Player.enabled = false; cam.enabled = false; }else{ Player.enabled = true; cam.enabled = true; } } } void OnGUI(){ if(show){ GUI.skin = skin; GUI.Box(new Rect (0, 0, Screen.width, Screen.height),"Инвентарь");
} } } и вот еще Код using UnityEngine; using System.Collections;
public class Shop : MonoBehaviour { public int A; public Rect AptechkaRect; public Transform XP; public int Money; public GUISkin customSkin; public Transform Inventar; public bool show; // Use this for initialization void Start () { }
// Update is called once per frame void Update () { if(Input.GetKeyDown(KeyCode.E)){ show =!show; Money = Money; if(XP.GetComponent<XP>().CurXP ==100){ } } } void OnGUI(){ GUI.skin = customSkin; if(A == 1){ GUI.Label(new Rect(10, Screen.height - 60, 120, 20),"Деньги:"+Money+ "/"+1000); if(show){ if(GUI.Button(AptechkaRect,"Аптечка")&& Money>0){ Money -=1; if(XP.GetComponent<XP>().CurXP <100 && Money >0){ Inventar.GetComponent<Inventar>().HP +=1; }else{ if(XP.GetComponent<XP>().CurXP ==100&& Money <1){ XP.GetComponent<XP>().CurXP +=0; } if(XP.GetComponent<XP>().CurXP ==100&& Money <100){ Money +=1; if(GUI.Button(AptechkaRect,"Аптечка")&& Money>0){ } } } } } } } void OnTriggerStay(){ if(GameObject.FindWithTag("Player")&&Input.GetKey(KeyCode.E)){ A =1; } } }
|
|
| |
Adom | Дата: Вторник, 06 Августа 2013, 17:31 | Сообщение # 666 | Тема: Отнялось столько и прибавилось к текущему значению |
Печенька!
Сейчас нет на сайте
| Спасибо )
Добавлено (06.08.2013, 17:31) ---------------------------------------------
Сообщение отредактировал Adom - Вторник, 06 Августа 2013, 17:31 |
|
| |
Adom | Дата: Вторник, 06 Августа 2013, 12:15 | Сообщение # 667 | Тема: Отнялось столько и прибавилось к текущему значению |
Печенька!
Сейчас нет на сайте
| Как сделать так чтобы сколько отнялось столько и прибавилось к текущему значению ?
|
|
| |
Adom | Дата: Вторник, 06 Августа 2013, 11:21 | Сообщение # 668 | Тема: Камера в мультиплеере. |
Печенька!
Сейчас нет на сайте
| allods,,Я думал что перед всеми нажатиями нужно проверять.)) Добавлено (06.08.2013, 11:21) --------------------------------------------- EchoIT,А какой лучшее решение на твой взгляд ?
|
|
| |
Adom | Дата: Понедельник, 05 Августа 2013, 21:14 | Сообщение # 669 | Тема: Камера в мультиплеере. |
Печенька!
Сейчас нет на сайте
| блин тогда не знаю у меня там кубики )) И у каждого физика и своя камера и управление. Добавлено (05.08.2013, 21:14) --------------------------------------------- И помоги с управлением в мультиплеере я не знаю правильно ли сделал )
|
|
| |
Adom | Дата: Понедельник, 05 Августа 2013, 21:05 | Сообщение # 670 | Тема: Камера в мультиплеере. |
Печенька!
Сейчас нет на сайте
| Alastar,Я даже не ставил это. Добавлено (05.08.2013, 21:05) --------------------------------------------- И у меня еще один вопрос правильно ли я сделал управление для игры по мультиплееру ? Код using UnityEngine; using System.Collections;
public class ControllerD : MonoBehaviour { public Transform Player; // Use this for initialization void Start () { } void Awake(){ if (!networkView.isMine){ enabled = true; } } // Update is called once per frame void Update () { if (networkView.isMine){ if(Input.GetKey(KeyCode.W)){ Player.Translate(0,0,1 *1); } // if (networkView.isMine){ if(Input.GetKey(KeyCode.S)){ Player.Translate(0,0,-1 *1); } // if (networkView.isMine){ if(Input.GetKey(KeyCode.D)){ Player.Translate(1,0,0 *1); } // if (networkView.isMine){ if(Input.GetKey(KeyCode.A)){ Player.Translate(-1,0,0 *1); } if (networkView.isMine){ if(Input.GetKey(KeyCode.Space)){ Player.Translate(0,1,0 *1); } } } } } } } }
|
|
| |
Adom | Дата: Понедельник, 05 Августа 2013, 20:45 | Сообщение # 671 | Тема: Вопрос-[ответ] по Unity |
Печенька!
Сейчас нет на сайте
| Ааа ну тогда не знаю
|
|
| |
Adom | Дата: Понедельник, 05 Августа 2013, 20:39 | Сообщение # 672 | Тема: Вопрос-[ответ] по Unity |
Печенька!
Сейчас нет на сайте
| Omlette, public GUISkin customSkin;
|
|
| |
Adom | Дата: Понедельник, 05 Августа 2013, 14:25 | Сообщение # 673 | Тема: Камера в мультиплеере. |
Печенька!
Сейчас нет на сайте
| Я сделал мультиплеер но вот появилась проблема у меня и клиента все время дергается камера.И я не знаю как это решить может вы поможете ?
|
|
| |
Adom | Дата: Воскресенье, 04 Августа 2013, 23:30 | Сообщение # 674 | Тема: Вопрос-[ответ] по Unity |
Печенька!
Сейчас нет на сайте
| Povstalez,Ага терпения то у меня много.
|
|
| |
Adom | Дата: Воскресенье, 04 Августа 2013, 23:18 | Сообщение # 675 | Тема: Вопрос-[ответ] по Unity |
Печенька!
Сейчас нет на сайте
| Мне помогут !?
|
|
| |
Adom | Дата: Воскресенье, 04 Августа 2013, 20:03 | Сообщение # 676 | Тема: Помогите со скриптом! |
Печенька!
Сейчас нет на сайте
| JHawk,
|
|
| |
Adom | Дата: Воскресенье, 04 Августа 2013, 14:01 | Сообщение # 677 | Тема: [3D] - Дивано-Война! - [FPS] |
Печенька!
Сейчас нет на сайте
| Alastar,У тебя я видел в игре можно играть по мультиплееру так вот можешь мне помочь с управлением персонажа и стрельбы ? Я использую сервер Unity. Код using UnityEngine; using System.Collections;
public class ControllerD : MonoBehaviour { public Transform Player; // Use this for initialization void Start () { } // Update is called once per frame void Update () { if(Input.GetKey(KeyCode.W)){ Player.Translate(0,0,1 *1); } // if(Input.GetKey(KeyCode.S)){ Player.Translate(0,0,-1 *1); } // if(Input.GetKey(KeyCode.D)){ Player.Translate(1,0,0 *1); } // if(Input.GetKey(KeyCode.A)){ Player.Translate(-1,0,0 *1); } if(Input.GetKey(KeyCode.Space)){ Player.Translate(0,1,0 *1); } } }
И вот второй. Код using UnityEngine; using System.Collections; public class Shooting : MonoBehaviour { public Transform bullet; //Префаб патрона public Transform MuzzleFlash; //публичная переменная для префаба вспышки public int BulletForce = 5000; //Скорость патрона public AudioClip Fire; //Аудиоклип воспроизводящийся во время стрельбы public AudioClip Reload; //Аудиоклип воспроизводящийся во время перезарядки private float ReloadTimer = 0.0f; //Переменная для таймаута перезарядки private float MuzzleFlashLifetime = 0.0f; //Время жизни вспышки // Use this for initialization
void Start () { MuzzleFlash.active = false; // вспышка невидима } // Update is called once per frame void Update () { if(Input.GetKeyUp(KeyCode.Mouse0)) //Если нажата ЛКМ и кол-во патронов больше 0 { Shoot(); }
if(ReloadTimer>0) //если таймер больше 0 { ReloadTimer -= Time.deltaTime; //Переменная перезарядки уменьшается с течением времени } if(MuzzleFlashLifetime>0) //если время жизни вспышки больше 0 { MuzzleFlashLifetime -= Time.deltaTime; //Переменная времени жизни вспышки уменьшается с течением времени } if(MuzzleFlashLifetime<=0) //если время жизни вспышки больше 0 { MuzzleFlash.active = false; // вспышка невидима } } void Shoot() { Transform BulletInstance = (Transform) Instantiate(bullet, GameObject.Find("BulletSpawnPoint").transform.position, Quaternion.identity); //Генерится префаб патрона в координатах объекта "BulletSpawnPoint" BulletInstance.rigidbody.AddForce(transform.forward * BulletForce); //Сгенерированый патрон отправляется вперед со скоростью "BulletForce" audio.PlayOneShot(Fire);//проигрываем звук выстрела MuzzleFlash.active = true; //вспышка от выстрела видна MuzzleFlashLifetime = 0.1f; //установка времени жизни вспышки } }
И вот скрипт сервера. Код /* * This file is part of the Unity networking tutorial by M2H (http://www.M2H.nl) * The original author of this code Mike Hergaarden, even though some small parts * are copied from the Unity tutorials/manuals. * Feel free to use this code for your own projects, drop me a line if you made something exciting! */ #pragma strict
var connectToIP : String = "127.0.0.1"; var connectPort : int = 25001;
//Obviously the GUI is for both client&servers (mixed!) function OnGUI () {
if (Network.peerType == NetworkPeerType.Disconnected){ //We are currently disconnected: Not a client or host GUILayout.Label("Connection status: Disconnected"); connectToIP = GUILayout.TextField(connectToIP, GUILayout.MinWidth(100)); connectPort = parseInt(GUILayout.TextField(connectPort.ToString())); GUILayout.BeginVertical(); if (GUILayout.Button ("Connect as client")) { //Connect to the "connectToIP" and "connectPort" as entered via the GUI //Ignore the NAT for now Network.useNat = false; Network.Connect(connectToIP, connectPort); } if (GUILayout.Button ("Start Server")) { //Start a server for 32 clients using the "connectPort" given via the GUI //Ignore the nat for now Network.useNat = false; Network.InitializeServer(32, connectPort); } GUILayout.EndVertical(); }else{ //We've got a connection(s)!
if (Network.peerType == NetworkPeerType.Connecting){ GUILayout.Label("Connection status: Connecting"); } else if (Network.peerType == NetworkPeerType.Client){ GUILayout.Label("Connection status: Client!"); GUILayout.Label("Ping to server: "+Network.GetAveragePing( Network.connections[0] ) ); } else if (Network.peerType == NetworkPeerType.Server){ GUILayout.Label("Connection status: Server!"); GUILayout.Label("Connections: "+Network.connections.length); if(Network.connections.length>=1){ GUILayout.Label("Ping to first player: "+Network.GetAveragePing( Network.connections[0] ) ); } }
if (GUILayout.Button ("Disconnect")) { Network.Disconnect(200); } }
}
// NONE of the functions below is of any use in this demo, the code below is only used for demonstration. // First ensure you understand the code in the OnGUI() function above.
//Client functions called by Unity function OnConnectedToServer() { Debug.Log("This CLIENT has connected to a server"); }
function OnDisconnectedFromServer(info : NetworkDisconnection) { Debug.Log("This SERVER OR CLIENT has disconnected from a server"); }
function OnFailedToConnect(error: NetworkConnectionError){ Debug.Log("Could not connect to server: "+ error); }
//Server functions called by Unity function OnPlayerConnected(player: NetworkPlayer) { Debug.Log("Player connected from: " + player.ipAddress +":" + player.port); }
function OnServerInitialized() { Debug.Log("Server initialized and ready"); }
function OnPlayerDisconnected(player: NetworkPlayer) { Debug.Log("Player disconnected from: " + player.ipAddress+":" + player.port); }
// OTHERS: // To have a full overview of all network functions called by unity // the next four have been added here too, but they can be ignored for now
function OnFailedToConnectToMasterServer(info: NetworkConnectionError){ Debug.Log("Could not connect to master server: "+ info); }
function OnNetworkInstantiate (info : NetworkMessageInfo) { Debug.Log("New object instantiated by " + info.sender); }
function OnSerializeNetworkView(stream : BitStream, info : NetworkMessageInfo) { //Custom code here (your code!) }
/* The last networking functions that unity calls are the RPC functions. As we've added "OnSerializeNetworkView", you can't forget the RPC functions that unity calls..however; those are up to you to implement. @RPC function MyRPCKillMessage(){ //Looks like I have been killed! //Someone send an RPC resulting in this function call } */
|
|
| |
Adom | Дата: Воскресенье, 04 Августа 2013, 13:44 | Сообщение # 678 | Тема: [3D] - Дивано-Война! - [FPS] |
Печенька!
Сейчас нет на сайте
| Alastar,Ага но у меня то кубики с руками!
|
|
| |
Adom | Дата: Воскресенье, 04 Августа 2013, 13:15 | Сообщение # 679 | Тема: [3D] - Дивано-Война! - [FPS] |
Печенька!
Сейчас нет на сайте
| last2424,Все загрузил теперь осталась демка а ее куда кидать ?
|
|
| |
Adom | Дата: Воскресенье, 04 Августа 2013, 13:03 | Сообщение # 680 | Тема: [3D] - Дивано-Война! - [FPS] |
Печенька!
Сейчас нет на сайте
| last2424,Блин извини но можешь сказать как сюда картинки кидать ?
|
|
| |