Frage zu types
Übersicht

![]() |
sbrogBetreff: Frage zu types |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] ;zeichnet einen wachsenden Kreis, der immer heller wird, wenn die Maus gedrückt ist Graphics 800,600 kreisgroesse =100 ; der durchmesser kreis_x =400 ;die kreismitte kreis_Y =300 ;die kreismitte farbe = 0 Repeat Cls If MouseHit(1) kreis =True EndIf If kreis Color farbe,farbe,farbe ;die Farbe des kreises Oval kreis_x-kreisgroesse/2,kreis_y-kreisgroesse/2,kreisgroesse,kreisgroesse,0;der kreis selbst kreisgroesse = kreisgroesse+2 ;der Kreis wächst farbe = farbe +1 ;----------------- If farbe >255 ; Farbenspiel farbe =255 ;----------------- EndIf EndIf Flip Until KeyHit(1) wie kann ich diesen Code als Type schreiben, dass mehrere kreise gleichzeitig wachsen ? Ich habs schon probiert, aber es ist mir nicht gelungen. [/code] |
||
OJay |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ausnahmsweise mal code:
Code: [AUSKLAPPEN] Graphics 800,600
SetBuffer BackBuffer() ; <--- niemals vergessen! sonst ist flip nutzlos! ; unser type container Type Kreise Field groesse ; der durchmesser Field x ;die kreismitte Field y ;die kreismitte Field farbe End Type Repeat ; bei mausklick eine neue instanz erzeugen und mit startwerten füllen If MouseHit(1) kreis.kreise = New kreise kreis\x = 400 kreis\y = 300 kreis\groesse = 100 kreis\farbe = 0 EndIf ; alle kreise durchgehen und die attribute setzen und kreis zeichnen For kreis.kreise = Each kreise Color kreis\farbe,kreis\farbe,kreis\farbe ;die Farbe des kreises Oval kreis\x-kreis\groesse/2,kreis\y-kreis\groesse/2,kreis\groesse,kreis\groesse,0 ;der kreis selbst kreis\groesse = kreis\groesse+2 ;der Kreis wächst kreis\farbe = kreis\farbe +1 ;----------------- If kreis\farbe >255 ; Farbenspiel kreis\farbe =255 ;----------------- EndIf ;wenn der kreis eine bestimmte grösse überschreitet, löschen wir die instanz. thema: speicherschonung ;) ; sollte immer NACH allen zugriffen auf die instanz erfolgen, da sonst eine zugriffsverletzung auftritt If kreis\groesse > 800 Delete kreis Next Flip Cls Until KeyHit(1) alles wichtige neue ist kommentiert. schau dir aber bitte die type-tutorials auf blitzbase an, damit das verständnis wächst! |
||
- Zuletzt bearbeitet von OJay am Fr, Mai 14, 2004 18:43, insgesamt einmal bearbeitet
![]() |
sbrog |
![]() Antworten mit Zitat ![]() |
---|---|---|
Oh, danke
Ich weiss auch was ich falchgemacht habe. Ich habe die Farbe als Feld nicht berücksichtigt, sondern direkt in die For...each schleife geschrieben. Ich hab noch ein If kreis\groesse>1000 Delete kreis.kreise EndIf in die for...each schleife geschrieben Danke ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group