Zmena smeru s mínusom – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Zmena smeru s mínusom – .NET – Fórum – Programujte.comZmena smeru s mínusom – .NET – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
Peter
~ Anonymní uživatel
4014 příspěvků
9. 9. 2011   #1
-
0
-

Dobrý deň. Prosím, poraďte mi. Dá sa nejak zmeniť len hodnota, napr. mám premennú a s hodnotou -5. Potom tú premennú zmením a nastavým napr. na hodnotu 2. Ale tým pádom sa mi zmení hodnota z -5 na 2. Ale ja by som chcel aby to bolo -2. Dá sa to nejak spraviť?

Prikladám aj časť kódu z hry, ale problém je lepšie popísaný vyžšie:

if (ballMovie.posX <= 50 || ballMovie.posX >= 840)
    ballSpeedX = -ballSpeedX;

if (vozikVPohybu == true)
{
    ballSpeedX = 5;
}

Najprv dávam podmienku, či nedošlo k detekcií loptička-okraj. Potom, ak došlo, smer lopty sa obráti. A v druhej podmienke, chcem nastaviť rýchlosť lopty tak, že budeme počítať ujetú vzdialenosť od našej polohy, až dokým nepustím klávesnicu pre pohyb. To už mám odpodmienkovené(podmienky if) a ide to.

Nahlásit jako SPAM
IP: 87.197.139.–
9. 9. 2011   #2
-
0
-

Zdravím,

není možné rovnou přiřadit -2? Pokud ne, tak stačí danou hodnotu odečíst od nuly :)

Nahlásit jako SPAM
IP: 91.217.52.–
Dušan Janošík | web: djanosik.cz, @djanosik
Peter
~ Anonymní uživatel
4014 příspěvků
9. 9. 2011   #3
-
0
-

Obydva spôsoby by sa dali použiť, ale ja potrebujem aby bola hodnota niekedy mínusová a niekedy plusová.

Nahlásit jako SPAM
IP: 87.197.139.–
9. 9. 2011   #4
-
0
-

Tak musíš zjistit kdy a podle toho vytvořit řešení. S tím ti asi nikdo neporadí, nikdo neví jak to má fungovat.

Nahlásit jako SPAM
IP: 91.217.52.–
Dušan Janošík | web: djanosik.cz, @djanosik
Peter
~ Anonymní uživatel
4014 příspěvků
9. 9. 2011   #5
-
0
-

Vysvetlím teda podrobnejšie:

Ide o hru arkanoid. Pálkov by som chcel odrážať loptu. To už aj ide. Ale vždy sa odrazí v tom istom uhle. Ja by som chcel, aby sa v závislosti na rýchlosť pálky uhol menil. Teraz k základu odrážania, čo mám: Zoberem na popísanie problému len osu X, to by malo stačiť. Takže, napr. rýchlosť v ose X mám nastavenú na hodnotu 2. Ale ak narazý napr. na ľavý okraj loptička, jej rýchlosť sa po tej istej dráhe zmení. To spravím tak, že rýchlosti v ose X dám zápornu hodnotu, teda -2. Zasa keď sa dotkne pravého okraju, tak bude hodnota 2 a tak je do donekonečna, ako v arkanoide. A k tomu môjmu kódu vyžšie: ja tam zmením rýchlosť po ose X. Ale napr. ak mám v tom momente rýchlosť -2 a zmení sa tá hodnota na 5, tak napr. loptička mi v strede hracej plochy zmení smer. Hehe a to je dosť na .... .

Nahlásit jako SPAM
IP: 87.197.139.–
Řešení
9. 9. 2011   #6
-
0
-
Vyřešeno Nejlepší odpověď

Dobře, to je mi jasný. Potřebuješ na základě toho stanovit podmínky, kdy má být hodnota kladná a kdy záporná, třeba podle předchozí hodnoty. Pak s tím číslem můžeš nějak pracovat. 

if (vozikVPohybu)
{
    ballSpeedX = Math.Sign(ballSpeedX) * 5;
}
Nahlásit jako SPAM
IP: 91.217.52.–
Dušan Janošík | web: djanosik.cz, @djanosik
Peter
~ Anonymní uživatel
4014 příspěvků
9. 9. 2011   #7
-
0
-

Jéj paráda, už ide, díky moc za pomoc :-) A mohol by si mi prosím ťa aj vysvetliť, čo si spravil? Ja som len úplny začiatočník a to čo robím, by mala byť moja prvá hra.

Nahlásit jako SPAM
IP: 87.197.139.–
10. 9. 2011   #8
-
0
-

Funkce Sign vrací 'znaménko' daného čísla. Pro záporné číslo vrátí -1, pro kladné +1. Víc jsem tam nezměnil.

Nahlásit jako SPAM
IP: 91.217.52.–
Dušan Janošík | web: djanosik.cz, @djanosik
Peter
~ Anonymní uživatel
4014 příspěvků
10. 9. 2011   #9
-
0
-

Aha :-) Ďakujem za pomoc. A mohol by som sa ešte niečo spýtať? Je to pár informácií o Windows Phone. Len neviem či mám založiť nové vlákno, alebo by som to mohol dať sem?

Nahlásit jako SPAM
IP: 87.197.139.–
10. 9. 2011   #10
-
0
-

Určitě máš založit nové vlákno.

Nahlásit jako SPAM
IP: 91.217.52.–
Dušan Janošík | web: djanosik.cz, @djanosik
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 8 hostů

Podobná vlákna

Více směrů — založil RePRO

Změna IP — založil don_Dominique

Změna procedur — založil Ivos

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý