Hirdetés
- Nvidia GPU-k jövője - amit tudni vélünk
- AMD Navi Radeon™ RX 9xxx sorozat
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- E-book olvasók
- 3D nyomtatás
- Léghűtés topik
- Végleg lemondott a régi gépekről a Steam
- Kormányok / autós szimulátorok topikja
- Milyen asztali (teljes vagy fél-) gépet vegyek?
Új hozzászólás Aktív témák
-
PandaMonium
őstag
válasz
trisztan94
#1053
üzenetére
Mondjuk leellenőrzöd, hogy a touchPos a textúrád koordinátáin belül van-e.
Így ni:
Vector3 touchPos = new Vector3();
touchPos.set(Gdx.input.getX(), Gdx.input.getY()*(-1), 0);
if(touchPos.x > karika.x && touchPos.x < (karika.x+karika.width) && touchPos.y < karika.y && touchPos.y > (karika.y-karika.height)){
karika.setPosition(new Vector2(touchPos.x - 106 / 2, touchPos.y + 238*2));
}
Amit az if-en belül írtam ott nem vagyok benne biztos, hogy léteznek azok a paraméterek olyan formában ahogy írtam őket, de elég logikus a dolog: A karika.x a karika x koordinátája, a karika.y az y koordinátája a karika.width a karika textúrájának szélessége, a karika.height a karika textúrájának magassága.
Elsőre bonyolultnak tűnhet ez a sor de rajzold le magadnak otthon a feltételeket egy papírra, (vizuálisan mindent sokkal könnyebb megérteni) és te is rájössz, hogy pofon egyszerű az egész.
Ja és igen, a feltételben a "touchPos.y < karika.y && touchPos.y > (karika.y-karika.height)" rész csak akkor működik ha felfelé növekvő, lefelé csökkenő koordináta rendszert használsz, máskülönben: "touchPos.y > karika.y && touchPos.y < (karika.y+karika.height)" a nyerő (ugyan az, csak fordítva).
Elég reggel van még, de ha nem írtam el semmit akkor működnie kell így.
Új hozzászólás Aktív témák
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



