Aktuelle Zeit: 18.06.2018 13:24

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 39 Beiträge ]  Gehe zu Seite 1, 2, 3, 4  Nächste
Autor Nachricht
 Betreff des Beitrags: ÐrawMania • (2D-Drawing-Spiele-Serie)
BeitragVerfasst: 05.05.2007 00:14 
Offline
Kommando SG1
Benutzeravatar

Registriert: 01.11.2005 13:34
Wohnort: Glienicke
So, damit Beiträge zu diesem Thema nicht zu DontDrop kommen mache ich jetzt hier ein Thema auf und werde hier ein paar CODEs reinstellen bezüglich 2D-Drawing.

Jetzt ist noch nix zu sehen, weil ich erst ein bisschen was vorbereiten muss, wenn ihr aber schon fragen habt zur SERIE "DrawMania", dann könnt ihr die Hier ruhig stellen. auch wenn ihr Fragen habt wie man das eine oder andere nur mit LineXY realisieren könnte.

DrawMania
    DrawMania ist eine Spiele-Serie für PureBasic die versucht nur mit ganz einfachen Mitteln interessante Spiele und Effekte zu entwickeln. Zu den einfachen Mitteln gehören bei Grafik "2D-Drawing" und bei Audio "Beep".
    In dieses Spielen ist es verboten mit Sprites zu Arbeiten oder gar Sprites3D, auch dürfen keine Sound oder Movie Befehle verwendet werden. (InitSprite darf verwendet werden um einem Screen zu benutzen)


Topic sticky - Kaeru fecit :allright:

_________________
Bild
 
BildBildBild


Zuletzt geändert von STARGÅTE am 07.05.2007 22:56, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 05.05.2007 01:19 
Offline
Benutzeravatar

Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte
Keine Sound Befehle? Du meinst das einbinden und abspielen exterener sounds? Was mit sound effekten die "on-the-fly" erzeugt werden?

_________________
Windows 10 Pro, 64-Bit / Outtakes | Derek


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 05.05.2007 01:39 
Offline
Kommando SG1
Benutzeravatar

Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Ich meine damit das du nicht schreiben sollst PlaySound, egal was Sound ist.

Sondern es soll nur mit Hilfe von Beep(Frequenz, Dauer) ein Ton/Effekt/Lied erzeugt werden

_________________
Bild
 
BildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 05.05.2007 01:55 
Offline
Benutzeravatar

Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte
Na dann schaffe, schaffe, Häusle baue! Ein "Lied" mit Beep_(). Naja, wir haben ja gesehen das es geht aber ist den Aufwand dann wohl nicht wert und ich werde mich auf einfache Sound Effekte beschränken. Wie auch immer, ich finde den Contest dufte und werd' versuchen mal was zusammen zuschrauben. Bild

_________________
Windows 10 Pro, 64-Bit / Outtakes | Derek


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 05.05.2007 03:58 
Offline
Benutzeravatar

Registriert: 23.12.2005 12:41
Wohnort: München
Das mit dem Sound versteh ich nicht.
Ich mag keine Anwendungen die Beep_() verwenden. Egal ob ein Spiel oder der dumme Virenscanner.
Warum schließt du PlaySound() aus? Klar, wenn das Spiel "oldschool" aussieht, dass man nicht mit 1a klingenden MP3's ankommt. Aber On-The-Fly erstellte Sounds unterstreichen das doch eigentlich (*denk an die neue Lib von Hroudtwolf*)

_________________
BildKarte der Pureboard-Mitglieder


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 05.05.2007 05:07 
Offline
Kommando SG1
Benutzeravatar

Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Sagen wir mal so, die Überschrift heißt ja "DrawMania", es geht mir also vorallem um die Draw-Befehle. Wenn du/ihr nun das BEEP nicht mögt ^^ dann könnt ihr eben Sounds benutzen und wenn dieser Sound einem "altertümlichen" Spiel nahe kommt ist das denke ich mal ok.

@Admin/Mod : Ich glaube ich habe das Thema im falschen Sub-Forum gepostet, vllt wäre es in "Ankündigungen" besser aufgehoben, wwil es ja eine Art Contest geworden ist.

_________________
Bild
 
BildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 05.05.2007 05:28 
Offline
Benutzeravatar

Registriert: 08.09.2004 00:57
Wohnort: Berlin
Ich würde sagen, Du haust mal einen Admin an, wie es mit einem Contest
aussieht, haben ja lange keinen gehabt. Wenn Rob mitspielt, wir Sponsoren
finden, wird bestimmt Interessant, obwohl schon wieder nix für mich :mrgreen:
Bis zur Klärung lassen wir den Thread mal hier stehen, denke ich.

_________________
PureBasic 5.70 | SpiderBasic 2.10 | Windows 10 Pro (x64) | Linux Mint 19.0 (x64)
"Ich möchte gerne die Welt verändern, doch Gott gibt den Quellcode nicht frei."
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 05.05.2007 11:36 
Offline
Benutzeravatar

Registriert: 23.12.2005 15:00
Wohnort: Alling (bei FFB)
Natürlich kann man mit Beep schöne Lieder schreiben,
ich hab da noch ein uraltes Projekt aus den Anfängen
meiner Programmierertage auf dem Webspace:
www.10a.rshost.de/load/files/notenspieler.exe

(das Startlied heißt Üsküdara,
kommt glaube ich aus der Türkei und wir
hatte es irgendwann mal im Musikunterricht)

_________________
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 05.05.2007 14:09 
Offline
Kommando SG1
Benutzeravatar

Registriert: 01.11.2005 13:34
Wohnort: Glienicke
....

Vorgeschichte :HIER

...

Also, das mit den DLL und LIB geht leider nicht wegen 3.3, auf dieses Thema gehe ich nicht weiter ein!

So wie ich das jetzt heraus lesen konnte geht es eigendlich nicht mehr nur um Spiele mit 2D Drawing sonder auch andere Spiele und dnan ganz allemeine sachen wie : Explosion, Menü.

Ich selber tue mich immer schwer meine CODE so zu programmieren das ich feste Proceduren habe, aber ich wede die Explosionroutiene mal für euch sauber abschreiben.

PS: Aber es wäre natürlich auch nicht schlecht wenn sich alle ein paar gedanken machen wie sie sowas machen könnten :wink:

_________________
Bild
 
BildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 05.05.2007 14:44 
Offline
Kommando SG1
Benutzeravatar

Registriert: 01.11.2005 13:34
Wohnort: Glienicke
[Sry wegen DoppelPost]

So ich habe mal hier eine einfache darstellung einer Explosion von Linien :
Code:
InitSprite()

#b = 0.01745329
Procedure.f Abstand(x1, y1, x2, y2)
 r.f = Sqr(Pow(x1-x2,2)+Pow(y1-y2,2))
 ProcedureReturn r
EndProcedure
Procedure.f Diagonale(x.f,y.f)
 r.f = Sqr(x*x+y*y)
 ProcedureReturn r
EndProcedure
Procedure.f Winkel(x.f,y.f)
 Winkel.f
 If x = 0
  If y <  0 : Winkel = -90 : EndIf
  If y >= 0 : Winkel =  90 : EndIf
 Else
  Winkel = ATan(y/x)/#b
  If x < 0 : Winkel + 180 : EndIf
 EndIf
 If Winkel < 0 : Winkel + 360 : EndIf
 ProcedureReturn Winkel
EndProcedure



Structure P
 Farbe.l ; Farbe
 l.l     ; Teilchenlänge
 x.f     ; x-Position
 y.f     ; y-Position
 dx.f    ; Flugrichtung (in X)
 dy.f    ; Flugrichtung (in Y)
 rw.l    ; Eigenrotationswinkel
 rdw.l   ; Eigenrotationswinkeländerung
EndStructure

NewList P.P() ; Partikelliste

; Fügt ein Partikel hinzu mit (Farbe, Posion(x,y), Flugrichtung, Geschwindigkeit, Rotationsgeschwindigkeit)
Procedure AddParticle(Farbe, l, x, y, w.f, v.f, rdw.f)
 AddElement(P())
 P()\Farbe = Farbe
 P()\l = l
 P()\x = x
 P()\y = y
 P()\dx = Cos(w*#b)*v
 P()\dy = Sin(w*#b)*v
 P()\rw = w
 P()\rdw = rdw
EndProcedure
Procedure AddExplosion(Farbe, l, x.f, y.f, Dichte.f, v.f, rdw.f)
 nn = 360*Dichte
 For n = 1 To nn
  AddParticle(Farbe, l, x, y, n/Dichte, Random(v*100)/100+v/2, rdw)
 Next n
EndProcedure

#Gravitation = 0.01 ; bei 0 keine


OpenWindow(1, 300, 0, 600, 600, #PB_Window_MinimizeGadget, "2D-Drawing")
 OpenWindowedScreen(WindowID(1), 0, 0, 600, 600, 0, 0, 0)

Repeat

 Event = WindowEvent()
 Select Event
  Case #PB_EventCloseWindow
   End
 EndSelect

 ClearScreen(0,0,0)
 
 StartDrawing(ScreenOutput())
 
  ResetList(P())
  While NextElement(P())
   ; Gravitation
   P()\dy + #Gravitation
   ; Bewegung
   P()\x + P()\dx
   P()\y + P()\dy
   ; Eigenrotation
   P()\rw + P()\rdw
   ;Anzeige
   Winkel = Winkel(P()\dx,P()\dy)+P()\rw
   x2 = Cos(Winkel*#b)*P()\l
   y2 = Sin(Winkel*#b)*P()\l
   Line(P()\x, P()\y, x2, y2, P()\Farbe)
   ; Deletakontrolle
   If P()\y > 620 : DeleteElement(P()) : EndIf
  Wend
 
 StopDrawing()
 
 FlipBuffers()

 WMx = WindowMouseX()
 WMy = WindowMouseY()
 
 If GetAsyncKeyState_(#VK_LBUTTON) <> 0
  Druck = 1
 ElseIf Druck = 1
  Druck = 0
  Rot = Random(127)+128
  Gruen = Random(127)+128
  Blau = Random(127)+128
  Laenge = Random(10)+5 ; Wie groß soll eines Teilchens durchschnittlich sein
  Dichte.f = (Random(15)+5)/10 ; Wie viele Teilchen soll es pro 1° geben
  v.f = (Random(20)+5)/10 ; wie schnell sollen die Teilchen Durchschnittlich fliegen
  rdw.f = Random(4) ; wie schnell soll die Eigenrotation der Teilchen sein
  AddExplosion(RGB(Rot,Gruen,Blau), Laenge, WMx, WMy, Dichte, v, rdw)
 EndIf
 
ForEver

_________________
Bild
 
BildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 39 Beiträge ]  Gehe zu Seite 1, 2, 3, 4  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye