Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Fawkes

Frischling

  • »Fawkes« ist der Autor dieses Themas

Beiträge: 58

Beruf: Realschüler :)

  • Private Nachricht senden

1

13.10.2013, 11:28

Kann mir bitte jemand eine Funktion schreiben

Hallo, ich mache grad ein kleine 2D Kampfspiel wo zwei Spieler gegeneinander kämpfen können. Bin grad so ziemlich am anfang. Gemacht wird das ganze in sfml 2.0 und ich stehe grad vor der Aufgabe meine Sprites zu animieren. :)

Folgende Funktion:

C-/C++-Quelltext

1
2
3
4
5
6
void Player::animation(sf::RenderWindow *display){

    if( kmove == IDLE  && theFighter == NARUTO ){ // ich mache für jeden Fighter den ich habe eine eigene "Funktion" zum animieren. kmove = kind of move ( idle, run, etc.. )
       
    }
}


Ps. Die Sprites sind alle nicht von mir die ich benutze. Wird aber wenn das Spiel fertig ist erwähnt. :)

Edit by BlueCobold: Anhang wegen Urheberrechtsverletzung entfernt.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »BlueCobold« (14.10.2013, 06:33)


Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

2

13.10.2013, 11:35

Und du möchtest jetzt das wir dir die Animations Funktion schrieben? Ich bin leicht verwirrt.
Wir helfen zwar gern (naja war mal so, einige flammen nur) aber etwas komplett für dich machen und dir dann überreichen verfehlt den Zweck. ;)
Probier und frage wenn was nicht geht. Und versuch es möglichst detailliert zu beschreiben.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

Fawkes

Frischling

  • »Fawkes« ist der Autor dieses Themas

Beiträge: 58

Beruf: Realschüler :)

  • Private Nachricht senden

3

13.10.2013, 11:45

Jo ich gebe zu ich war ein bisschen faul. :) Ich mache es jetzt selber.

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

4

13.10.2013, 12:04

Ich schreibe dir die Funktion gerne ein wenig weiter:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
void Player::animation(sf::RenderWindow *display){

    if( kmove == IDLE  && theFighter == NARUTO ){ // ich mache für jeden Fighter den ich habe eine eigene "Funktion" zum animieren. kmove = kind of move ( idle, run, etc.. )
       this->PlayAnimationNarutoIdle();
    } else if(kmove == WALK && theFighter == NARUTO){
       this->PlayAnimationNaturoWalk();
    }
}


Das was ich hier geschrieben hab ist natürlich erst mal Schwachsinn so wie es da steht. Zeigen will ich damit eigentlich nur, dass wir dir auch nicht einfach so fertigen Code geben können. Mal abgesehen dass das hier vermutlich auch keiner machen möchte weil es viel Zeit kostet. Das Problem dabei wäre aber, dass wir deinen Code nicht kennen und dann irgendeine Funktion schreiben würden. Die würde am Ende mit großer Wahrscheinlichkeit nicht zu deinem Code passen und du könntest sie direkt wieder löschen.
Wie Architekt aber auch schreibt, ist der Sinn hier eigentlich, dass wir dir bei deinen Problemen helfen. Schön dass du es selbst versuchst, das ist die bessere Einstellung:) Wenn du nicht weiter kommst, schreib hier im Thread gerne was das Problem ist und dir kann sicher geholfen werden. Aber versuch mal selbst, das wird schon.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

5

13.10.2013, 12:52

Ps. Die Sprites sind alle nicht von mir die ich benutze. Wird aber wenn das Spiel fertig ist erwähnt. :)
Dann stehen sie hoffentlich unter einer Lizenz, die reine Erwähnung erlaubt und nicht unter strengerem Urheberrecht. Denn dann wäre eine Erwähnung so viel wert wie gar keine und die Verwendung illegal.

Jo ich gebe zu ich war ein bisschen faul. :)
Das ist eine ganz schlechte Voraussetzung zur Entwicklung eines Spiels und um hier auf Hilfe zu hoffen.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Fawkes

Frischling

  • »Fawkes« ist der Autor dieses Themas

Beiträge: 58

Beruf: Realschüler :)

  • Private Nachricht senden

6

13.10.2013, 13:33

Die Funktionen sind fertig:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    void PlayNarutoIdle(){

        if( X1 < 156 )
            X1 += 52;
        else
            X1 = 52;

            sPlayer.setTextureRect( sf::IntRect(X1, 20, 50, 73 ) );
    }

    void PlayNarutoRun(){

        if( X2 < 300 )
            X2 += 60;
        else
            X2 = 60;

        if( X2 != X2*4   )
            sPlayer.setTextureRect( sf::IntRect(X2, 235, 59, 50 ) );
    }


C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
void Player::animation(){

    if( kmove == IDLE ){
        if( theFighter == NARUTO ){
            PlayNarutoIdle();
        }
    }

    if( kmove == RUN ){
        if( theFighter == NARUTO ){
            PlayNarutoRun();
        }
    }
}


Danke an Schorsch für die kleine Anlaufhilfe. :)

7

13.10.2013, 17:56

Du könntest auch jeden Charakter in eine Klasse packen, die von einer Basisklasse "Character" erbt. Die Basisklasse definiert Methoden, wie etwa OnIdle() und zum Rendern, muss man dann nur noch die passende Funktion aufrufen. Das würde die Prüfung des Charakters überflüssig machen.

Liebe Grüße,
~ EuadeLuxe ~

Toa

Alter Hase

Beiträge: 944

Beruf: Research associate

  • Private Nachricht senden

8

13.10.2013, 18:29

Hey, woher sind die Tiles? Ich mag Naruto und hab grad Lust bekommen selbst nen kleines Spiel damit zu machen :D Grüße T0a

€Dit: Ich seh grad ganz unten ist ein Link. Scheint als wären die vom GameBoy Spiel. Ich glaub nicht das du die verwendet darfst, bzw. solltest du das Spiel nicht veröffentlichen.
"Das ist ein Minkovski Raum, manche Menschen nennen ihn auch Weltraum" Prof. Dr. Jürgen Wambach, Theoretische Physik, TU Darmstadt | Meine Homepage

TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

9

13.10.2013, 22:41

Darf man die hier eigentlich verlinken? Man darf ja nichts verbreiten, ohne Erlaubnis des Urhebers.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

10

14.10.2013, 06:33

Man darf es nicht, nein. Hab's mal rausgeworfen. Wir wollen ja nicht, dass David eine Abmahnung bekommt.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Werbeanzeige