Seite 1 von 2

Prozedurenvariable zuweisen -> In PB möglich ?

Verfasst: 05.12.2005 19:59
von Gackt
Sry, eine andere Überschrift fiel mir nicht ein.

Ich hab folgendes Problem:

Ich möchte eine Prozedur erstellen und die darin enthaltene sachen
ändern können, ohne die Prozedur zu ändern.

Hier ein Beispiel

Code: Alles auswählen

Procedure zeichne_kreis(rot,grün,blau)
    CreateSprite(0,80,80)
   
   If StartDrawing(SpriteOutput(0))
      Circle(40,40,39,RGB(rot,grün,blau))
      StopDrawing()
   EndIf 
EndProcedure
Wenn ich jetzt den Prozedur aufrufe, will ich, dass ich dann die Farben so
definieren kann, ohne den Prozedur zu ändern.

Bsp.:

Code: Alles auswählen

zeichne_kreis($FF,$00,$00)
So wird dann ein kreis gezeichnet mit den darin enthaltenen Werten
(hier: rot).


Meine frage ist:
Wieso funktioniert das nicht, wenn ich es kompilieren möchte. Ist es in
PB nicht möglich ?


MfG
Gackt

Verfasst: 05.12.2005 20:03
von ts-soft
Ich denke mal, grün ist keine Variable. Vielleicht mal mit gruen versuchen :mrgreen:

Verfasst: 05.12.2005 20:16
von Gackt
Jaaa, es klappt ^^ Dankee vielmals :mrgreen:

In PB ist doch alles möglich ^^ Wie konnte ich nur anders denken :lol:

MfG
Gackt

Verfasst: 05.12.2005 20:20
von bobobo
davon mal abgesehen geht's auch so

Code: Alles auswählen

Global gruen.l,rot.l,blau.l  ; hier !! Globale VariablenDefinitionen (Typ Long)

Procedure zeichne_kreis()
  Debug Str(rot)+" "+Str(gruen)+" "+Str(blau) ; hier !! Benutzung der Globalen Variablen
EndProcedure

rot=255 ; Zuweisung zur glablen Variablen rot
gruen=23 ; Zuweisung zur glablen Variablen gruen
Blau=20 ; Zuweisung zur glablen Variablen blau
zeichne_kreis()
Die Procedure hab ich mal etwas geändert .. aber funktionieren tut sowas auch mit anderem Procedureinhalt.

Re: Prozedurenvariable zuweisen -> In PB möglich ?

Verfasst: 05.12.2005 20:24
von freedimension
Gackt hat geschrieben:... den Prozedur ...
http://dict.leo.org/?search=Prozedur

Verfasst: 05.12.2005 20:28
von Gackt
@freedimension:
ok, ok, war mein fehler :roll:
Habs editiert.

@bobobo:
Danke, aber so ist es komplizierter find ich.

Verfasst: 05.12.2005 20:33
von freedimension
Gackt hat geschrieben:@freedimension:
ok, ok, war mein fehler :roll:
Habs editiert.
Nimm's nicht zu ernst, nicht dass es jetzt heißt der böse freedimension ;) Entschuldigen brauchst du dich auch nicht, und ändern hättest du es auch nicht müssen. Lediglich merken sollst du es dir, dann hätte ich schon alles erreicht was ich wollte und erhoffte :)

Keep 8) :!:

Verfasst: 05.12.2005 20:58
von Gackt
Nee, wieso sollte ich dir denn deswegen böse sein ? :)
Eigentlich muss ich mich bei dir bedanken, weil du mein Fehler
korrigiert hast <)
Und gemerkt habe ich mir es auch noch. Somit hast du erreicht, was
du erreichen wolltest ^^
Danke :)

MfG
Gackt

Verfasst: 05.12.2005 21:00
von freedimension
Du kannst "Entschuldigen" aus meinem Post von oben auch nach Belieben ersetzen durch "Bedanken" ;)

Verfasst: 05.12.2005 21:25
von Gackt
Ok, dann mach ich das mal :lol:

Code: Alles auswählen

Procedure text(titel.s, entschuldige.s)
   MessageRequester(titel, entschuldige) ;Entschuldigen
EndProcedure

text("Bedanke","Danke :P") ; durch bedanken ersetzt :P
Somit hab ich "Entschuldigen" aus deinem Post durch "Bedanken" ersetzt :lol:


MfG
Gackt