Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - jasper111

#16
Ups,

gerade erst gesehen, dann will ich auch mal ganz herzlich gratulieren.

Und wünsche euch das Beste für den Verlauf der Schwangerschaft und ein gesundes Kind!!

Gruß Jasper111
#17
@Schanz0r

ich habe doch nur (meiner Meinung nach) höflich nach einem tut gefragt.
Deine Funktion für einen Kreis find ich gut, aber die war nebensächlich.Trotzdem vielen Dank.

Außerdem hatte ich nach oval wie in bb gesucht, wußte nicht das es den Kreis/oval nicht gibt..<<--Sollte aber nicht heißen das ich hier auf die dummen Antworten gewartet habe wie im BB-Forum.

Sollte aber mein Ton schon BB mäßig gewesen sein, so entschuldige ich mich in aller Form bei euch![/u]

Wollte auch schon aufgeben und die Lizenz  wieder verkaufen.

Nun ja, egal.

Die netten Worte von Gernot haben mich dazu bewegt mir das noch mal genau anzusehen und habe dann gedacht ich schreib mir mein Tutorial selber.

Werde es jetzt in teilen fertigstellen und nach und nach hier veröffentlichen.

Also nun aber Schluß hier und letztendlich hat es mir ja Motivation gegeben.

Gruß Jasper
#18
>>Vorab, erstellen wird mit zwei l's geschrieben<<

Hallo zusammen,

nach meiner Frage nach einem Tut, hab ich mir mal das Video von Gernot angesehen.

Habe dann quasi alles nach gearbeitet und dabei ist der folgende Code rausgekommen.

Bitte mal kontrollieren und ich wäre dankbar wenn mir jemand noch die FOREACH Abfrage erläutern könnte.
Code (glbasic) Select
// --------------------------------- //
// Project: letzter versuch
// Start: Friday, February 15, 2008
// IDE Version: 5.172


GLOBAL playery = 400
GLOBAL playerx = 200
//---------------------------------------------------------------------------------------
LOADSPRITE "../thomas/raumschiff.png", 0

LOADSPRITE "../thomas/asteroid.png", 2

LOADSPRITE "../thomas/laser.png", 1

//--------------------------------------------------------------------------------------
TYPE SCHUSS //SCHUSS mit feld >>x<< und Feld >>y<< vormerken
x
y
ENDTYPE
//---------------------------------------------------------------------------------------

LOCAL schuesse[] AS SCHUSS    //schuesse[] als variable(veränderbar) AS(als) SCHUSS

//---------------------------------------------------------------------------------------
WHILE TRUE //wenn wahr dann......

//---------------------------------------------------------------------------------------

IF KEY(203) THEN playerx =playerx -2 // Bewegung des Spieler Raumschiffes
IF KEY(205) THEN playerx =playerx +2 //Tasten druck wird geprüft und wenn ja(while true) dann minus oder plus nach links oder rechts
//---------------------------------------------------------------------------------------

playerx = MAX(MIN(playerx,600),16)  //Begrenzung des Spielers auf die x-Achse des Spielfeldes zwischen 16
    //und 600 (16 = 16 pixel vom linken Rand weg und 600 = rechter Rand)
   
//---------------------------------------------------------------------------------------    

LOCAL schuss AS SCHUSS //nach dem Abschuss wird der schuss als Neuer SCHUSS der widerum als variable schuesse[]
   //,(wir erinnern uns,SCHUSS wurde als TYPE SCHUSS hinterlegt,vor der Schleife)
//---------------------------------------------------------------------------------------



IF KEY(57) AND warten = GETTIMERALL()   <<Pause bis zum nächsten Schuss
schuss.y=400 //Wenn Space(Leertaste) gedrückt dann den schuss.y <-auf der y-Achse malen hier 400
schuss.x = playerx+10      //hier wird der schuss auf der x-Achse gemalt anhand der Raumschiff Position +10 nach rechts
    //damit er in der Mitte der Grafik erscheint
DIMPUSH schuesse[], schuss //fügt ein neues Feld(in unserem Fall einen Schuss ein) hier steht schuss als Wert der eingetragen wird in ->
//schuesse[] ( schuesse[] wurden ja "LOCAL" als "SCHUSS" bezeichnet)
//Also zum Verständniss >>schuss<< wird in die Variable schuesse[] "+einen schuss"eingetragen, die widerum in
//den Type SCHUSS hinterlegt wird.
warten = GETTIMERALL()+200
ENDIF



//---------------------------------------------------------------------------------------

FOREACH laser IN schuesse[] //Das verstehe ich noch nicht so ganz, >>Foreach<< heißt soviel wie >> "Für jeden" <<
//Hier wird irgendwie aus dem Schuss eine neue Variable namens laser
//die in schuesse[], die widerum in den Type SCHUSS erstellt werden, denke ich.

DEC laser.y, 2   // hier wird der laser.y, also die y-achse pro durchlauf um 2 verringert (DEC = verringern),das heißt der laser geht 2 Felder auf y-achse hoch
// wir erinnern uns (INC = erhöhen) der Variable Beispiel a = 5 wird bei jedem durchlauf um wert x veringert (INC a,(1 =x)

IF laser.y < 0 THEN DELETE laser  //wenn der laser kleiner 0 auf der y-achse ist, bitte löschen

DRAWSPRITE 1,laser.x,laser.y //Naja und hier zeichnen wir den laser(schuss) auf den Bildschirm

NEXT
//---------------------------------------------------------------------------------------
DRAWSPRITE 0,playerx,playery
SHOWSCREEN
WEND

Damit nicht durchgehend geschossen wird habe ich noch eine Pause mit warten = GETTIMERALL() eingebaut.

Hier zur besseren Übersicht auch noch eine PDF-Datei

spaceshooter teil 1 tut.pdf - 0.04MB

Hier die Grafiken:

grafiken.rar - 0.00MB

Gruß Jasper
#19
@Schanz0r, es ging mir nicht um eine Funktion für Kreise !

Ich wollte ein Tut für einen simplen Spaceshooter, Code mit Erklärung um alles zu verstehen.(Nicht in Englisch, versteh da nur Bahnhof)

Es liegt nicht am Interesse, sondern an fehlenden Erklärungen in Deutsch!

"Viele vergessen einfach das ein Anfänger erst das Alphabet lernen muss um dann schreiben und lesen zu können."
Was bringt mir wenn jemand sagt du musst ein A schreiben wenn ich nicht mal weiss was ein A ist???

Viele hier haben Erfahrungen in anderen Sprachen, meist aus der BB-Szene.

Aber was ist mit Anfängern?

So würde ich einen Schuss mit Types in BB verarbeiten
BB-Code:
Code (glbasic) Select
Type schiessen
Field psx
Field psy
End Type

For schuss.schiessen = Each schiessen
schuss\psy = schuss\psy -2
schuss\psx = schuss\psx
     DrawImage laser,schuss\psx,schuss\psy,0
If schuss\psy < 0 Then Delete schuss.schiessen
Next
If KeyDown(57)
zaehler = zaehler +1
If zaehler = 15 Then
schuss.schiessen = New schiessen
schuss\psx = px +10
schuss\psy = py
zaehler = 0
EndIf
EndIf
For schuss.schiessen=Each schiessen
Wenn ich den obigen Code als Anfänger lese verstehe ich nur Bahnhof, Koffertragen.

Eigentlich wünsche ich mir nur eine Erklärung wie ich den in GLBasic schreiben muss.

Möchte schon gerne in GLbasic Programmieren, brauche aber Erklärungen.


P.S.: Was bringt mir das beste Video der Welt wenn ich wenig bis gar nichts verstehe?

Gruß Jasper
#20
Quote from: BumbleBee
Quote from: jasper111Kannste Kreise nicht einbauen?
Wie Gernot schon sagte. Nimm Paint und mal die Ellipse oder den Kreis. Oder schreib dir eine Kreisfunction wenn du das unbedingt brauchst. Dann hast du ja deinen  Kreis Befehl.    

  DrawCircle(rad1,rad2,color)

Ist rad1<>rad2 hast du eine Ellipse.;)

Cheers
Wenn ich Kreisfunktionen schreiben könnte,meinste dass ich dann hier fragen würde?!?!
<<---Klingt ja hier fast schon wie im BB-Forum -->>

Wüde mich trotzdem freuen, wenn hier etwas mehr an tut's gearbeitet würde für Newbies wie mich.

Desweiteren finde ich die Videos zwar gut.
Aber alles in Englisch.Kann aber Englisch nicht gut, reicht gerade für die Befehle.


Naja, egal.

Trotzdem danke für den Link!

Gruß Jasper

P.S.: Man hat uns ja in der Schule auch nicht Zettel und Stift gegeben und gesagt jetzt schreiben wir ein Diktat. Sondern uns wurde auch nach und nach unter "ANLEITUNG" das Schreiben beigebracht!
#21
Kannste Kreise nicht einbauen?

Denke Grundformen kann man immer wieder gebrauchen.

Gruß Jasper
#22
Sorry, hab ich gefunden. :blush:


Wie mal ein kreise ( drawoval )?
Benutze gerne  rect oval und so, weil ich kein guter Zeichner bin.
Suche auch nicht gerne im Netz nach Bildern, findest selten was man sich so vorstellt.

Danke und Gruß Jasper111
#23
Hallo,

habe gerade Urlaub und würde gerne weiter programmieren(lernen).

Zm Lernen nehme ich gerne fertige Codes und zerlege die dann, so lerne ich am besten.

Gibt es ein Tut?

Also Steuerung ist das kleiner Problem.

Aber Feinde erstellen sowie Kollisionsabfrage macht mir grosse Probleme.

Wenn nicht kann einer eins machen.

Nichts wildes, Grafiken mit Drawrect reichen ja um das Funktionprinzip zu verstehen.

Am besten für dumme (also für mich)

Danke und Gruß Jasper111
#24
GLBasic - de / Vorstellecke
2007-Dec-02
Hallo @ all,

hab gerade hier die Beiträge gefunden und möchte auch einen beisteuern.

Ich bin 37 Jahre und habe erste Erfahrungen mit einem Tandy (TRS 80 Modell 2) in Basic gemacht.
Es kam dann 82 ein C 64 dazu sowie später ein Amiga 500 mit HDD (das alles hab ich noch heute).

Als der PC kam hab ich aufgehört mit programmieren (war eh nie eine Leuchte und außer Basic ging gar nichts).

2004 bin ich dann auf Purebasic sowie BlitzBasic gestoßen und hab wieder langsam angefangen.

Durch einen Zufall bin ich im Blitz - Forum auf GLBasic gestoßen und nu bin ich hier.

Hier hat mich vorallem die Hilfsbereitschaft überzeugt.

Gruß Jasper111
#25
Hallo und danke für die schnelle Antwort.

gefält mir gut die erklärung(Holz vor der Hütte(haste auch Bilder :)  ))

Werde direkt mal probiern ob ich es begriffen habe.

Danke und Gruß Jasper
#26
Hi,

sieht aber irgendwie  schwieriger aus, mag aber auch daran liegen das ich mit mühe Type in BB verstanden habe.

Gibt es ein ausführliches Tut für den Type in GLBasic ?

Gruß Jasper
#27
Hallo,

wie sieht es mit Type aus. Kann ich mit den auch wie in BB arbeiten?

Gruß Jasper111
#28
Hallo zusammen,

hab gerade hier über den irc Chat gelesen.

Als kleine Alternative bietet sich doch auch eine Shoutbox hier im Forum an.

Soeine hab ich auch in meinem Forum und finde es für die schnelle Frage nicht schlecht.

Vielleicht mal drüber nachdenken.

Gruß Jasper111
#29
Hallo und danke, so einen doofen Fehler habe ich schon lange nicht mehr gemacht, sorry.

Was mich jetzt noch interessieren würde ist warum der Debugger das nicht meldet, mit dem Komma.


Find es aber gut und hab es auch heute morgen gekauft.
Außerdem scheint die Community hier nett und vorallem hilfsbereit zu sein.
Der Kauf wid Herr Gernot Frisch hoffentlich freuen.

Gruß Jasper111
#30
Hallo,

wollte gerade mal das Basic ausprobieren und habe nicht mal das simple Spriteanzeigen hinbekommen.

Beim kompilieren kommt folgender Fehler.(Die Grafik ist aus dem Sampleordner)

compiling:
C:/DOKUME~1/ADMINI~1/LOKALE~1/Temp/glbasic/gpc_temp0.cpp: In function `int __GLBASIC__::__MainGameSub_()':
C:/DOKUME~1/ADMINI~1/LOKALE~1/Temp/glbasic/gpc_temp0.cpp:15: error: expected primary-expression before ',' token
*** FATAL ERROR - Bitte die Compiler-Ausgabe ins Forum kopieren

Mein Code:

LOADSPRITE "frog1.bmp" ,0
DRAWSPRITE ,0,100 ,100
SHOWSCREEN
END

Gruß Jasper