Kezdőoldal » Számítástechnika » Programozás » Unitybe hogy csináljam meg a...

Tamas3791 kérdése:

Unitybe hogy csináljam meg a következőt?

Figyelt kérdés

az van hogy van kettő gomb amikkel balra és jobbra menne a karakter ha a bal oldalit megnyomom tök jól balra megy de jobb oldalival is szintén balra megy


lehet több info kéne akkor irjatok


2015. aug. 23. 19:29
 1/9 anonim ***** válasza:
Hát másik irányba módosítsd a koordinátát. Ha a balra a -1, akkor a jobbra a +1.
2015. aug. 23. 19:32
Hasznos számodra ez a válasz?
 2/9 A kérdező kommentje:
oké ez megvan de bármelyik gombot nyomom meg mind két esetben csak balra megy pedig a function-t is beállítottam a jóra
2015. aug. 23. 19:41
 3/9 anonim ***** válasza:
Le tudnád írni hogy eddig hogyan van?
2015. aug. 23. 19:43
Hasznos számodra ez a válasz?
 4/9 A kérdező kommentje:

van egy repülő ennek kellene balra jobbra mennie


van két gomb (nem akartam és nem is tudnék touch eventet)


és a gombok hatására mozogna GetMouseButtonDown-al próbáltam de hiába adtam function bal / jobb


nem törődik vele hogy melyiket hajtsa végre


a mozgásra transform.Translate(vector3....)


ennyi elég?

2015. aug. 23. 19:46
 5/9 anonim ***** válasza:
A kódot írd le.
2015. aug. 23. 19:50
Hasznos számodra ez a válasz?
 6/9 A kérdező kommentje:

PLAYER


#pragma strict


var speed : float = 3;


function Balra(){

if ( Input.GetMouseButton(0))

{

transform.Translate(Vector3(-speed,0,0)*Time.deltaTime);

}

}


function Jobbra(){

if ( Input.GetMouseButton(0))

{

transform.Translate(Vector3(speed,0,0)*Time.deltaTime);

}

}

2015. aug. 23. 19:53
 7/9 A kérdező kommentje:

rájöttem mi a gond de nem tudom hogy javítsam ki


az hogy amit írtam az akkor történik ha megnyomom a bal egeret és nem a gombra kattintok


hogy kellene a gombkattintást belevenni nem a sima kattintást

2015. aug. 23. 20:13
 8/9 anonim ***** válasza:
2015. aug. 24. 04:05
Hasznos számodra ez a válasz?
 9/9 anonim ***** válasza:

1.UnityScript et felejtsd el, valamivel egyszerűbb, mint a c#, de idővel váltani fogsz, mert vannak limitációi, nagyobb szívás vele mások kódjait felhasználni, és lassabb is.


2.Input.GetMouseButton(0) -> ez azt vizsgálja, hogy az első egérgombot(~bal egérgomb) nyomva tartod-e. Mindkét esetben ezt vizsgálod, ha a jobb gombot akarod nézni, akkor Input.GetMouseButton(1). Vagy 2, a jó ég tudja, nem használom így, irányítást nem jó ötlet hardcode olni.


3.A függvényben csak a mozgatást végezd, a feltétel vizsgálatot előtte, olvashatóbb lesz tőle a kód, és nem utolsó sorban gyorsabb is(ha tudod, hogy merre kell mozgatni, akkor elég feltétel vizsgálat, nem kell kettő).


4.A transform ot érdemes egy változóba lementeni pl Awake()\Start() ban, ha annyit írsz, hogy transform.valami az pontosan ugyanaz, mintha azt írnád, hogy GetComponent<Transform>().valami - a GetComponent pedig lassú, mert végig kell mennie az összes komponensen. Nincs vele gond persze, amíg ritkán használod, de gyorsan össze tud adódni az ilyesmi.


Ha pedig azt akarod, hogy csak a kattintásra menjen arrébb(nem pedig nyomvatartásra), akkor ezt használd

Input.GetMouseButtonDown(int button)

2015. aug. 24. 04:27
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!