myGully.com

myGully.com (https://mygully.com/index.php)
-   Programmierung (https://mygully.com/forumdisplay.php?f=67)
-   -   Programmieren (https://mygully.com/showthread.php?t=2148098)

Tobirousch 25.10.10 16:14

Programmieren
 
Heyleute bin neu hier..und wollt mal fragen ob mir einer weiterhelfen kann
ich hab bei PB(purebasics) ein game programmiert...nix großes nurn kleines 2d spiel
in dem hab ich folgendes problem: ich hab nen sprite eingeladen der sozusagen eine kanonenkugel ist..und wenn ich ne bestimmte taste drücke feuert die sozusagen ab..nun will ich, das wenn ich das 2. mal die selbe taste drücke dieser sprite wieder an der stelle wo ich ihn eingeladen habe bzw in der pistole mehr oder weniger wieder neu geladen wird und wieder schißt...so das ich durchgängis schießen kann ohne für jeden schuss eine neue taste brauch

ich hoff ihr habt ne idee sonst weis ich nix mehr..der der mir programmieren beibringt weis leider sebst nicht weiter

laron90 25.10.10 17:00

hier kann dir leider keiner helfen
du hast in das falsche unterforum geschieben
dort musst du das nächste mal reinschreiben ;-)
[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]

ich sag phantasm (co admin) das sies bitte verschieben soll #

mfg laron90

phantasm 25.10.10 17:11

verschoben

Iljaassassin 25.10.10 18:56

Zitat:

Zitat von Tobirousch (Beitrag 21444234)
Heyleute bin neu hier..und wollt mal fragen ob mir einer weiterhelfen kann
ich hab bei PB(purebasics) ein game programmiert...nix großes nurn kleines 2d spiel
in dem hab ich folgendes problem: ich hab nen sprite eingeladen der sozusagen eine kanonenkugel ist..und wenn ich ne bestimmte taste drücke feuert die sozusagen ab..nun will ich, das wenn ich das 2. mal die selbe taste drücke dieser sprite wieder an der stelle wo ich ihn eingeladen habe bzw in der pistole mehr oder weniger wieder neu geladen wird und wieder schißt...so das ich durchgängis schießen kann ohne für jeden schuss eine neue taste brauch

ich hoff ihr habt ne idee sonst weis ich nix mehr..der der mir programmieren beibringt weis leider sebst nicht weiter

Hmm ka ob ich es richitg verstanden habe.
Aber hol dir immer den Status von einer Taste(ob sie losgelassen wurde).Z.B. Space in eine bool Variable.
Das prüfst du dann, auf true und, falls es true ist, dann erstellt du einen neuen Schuss.

Würde ich so angehen.Habe jetzt nciht so die Ahnung von PB.

Gruß

Edit:

ich habe es so ähnlich in meinem Spiel geregelt.Der Schuss wird dann in eine Liste geschoben, die durchgehe ich dann ncohmal und update und rendere jeden Schuss.

Hier der Codeausschnitt:

//"make" shot if spacebar was press
if(m_Window->GetInput().IsKeyDown(sf::Key::Space) && spaceDown == false)
{
m_Shot = new Shot(m_Window, m_PlayerSprite.GetPosition());
m_ShotList.push_back(m_Shot);
}
//is spacekey up?
spaceDown = m_Window->GetInput().IsKeyDown(sf::Key::Space);

PornoPenner 25.10.10 19:01

Und wie können wir Dir helfen?

Tobirousch 26.10.10 13:02

hmmm..naja du hast es fast richtig verstanden ich habe nich den befehl mit shot bejutzt..ich habe als kugel einen sprite eingelden
ich kenne den befehl shot und sowas alles nochnit^^

Iljaassassin 29.10.10 17:09

Zitat:

Zitat von Tobirousch (Beitrag 21447712)
hmmm..naja du hast es fast richtig verstanden ich habe nich den befehl mit shot bejutzt..ich habe als kugel einen sprite eingelden
ich kenne den befehl shot und sowas alles nochnit^^

Shor hier ist keine Funktion.
Entweder meinst du die Klasse oder die Liste m_ShotList.

Es geht doch nur darum, wie du es machst, dass die taste gedrpckt wurde und wieder losgelassen wurde.

Tobirousch 03.11.10 16:53

nein ich mein das so..ich haben nen sprite..und wenn ich ne taste drücke macht der mit ner bestimmten geschwindigkeit eine bewegung....und ich möchte das der dann nach n paar seks oda nach einer skunde so wieder an den ursprungsort kommt..von da wo ich ihn abgeschossen hab..nur der ursprungsort bewegt sich auch ständig


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:34 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.