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 - Markus

#31
Sowas brauche ich damit nicht jedes mal eine neue Struktur erzeugt wird.
Vieleicht geht sowas auch schon und ich weiß es noch nicht.

Code (glbasic) Select

FUNCTION >>>ByRef<<< FindPlayer AS TPlayer:Nr

FOREACH P IN Players[]
IF P.Nr=Nr THEN RETURN P
NEXT

ENDFUNCTION


Tatsache ist das ich hier den echten Inhalt vom Array bekomme
Code (glbasic) Select

LOCAL P AS TPlayer
FOREACH P IN Players[]
P.Draw()
IF P.Nr=1 THEN P.Update() //das geht
NEXT


Plan B geht nicht  (das Byref ist bei PR wohl schon automatisch bei)
Code (glbasic) Select

FUNCTION FindPlayer:Nr, PR AS TPlayer

FOREACH PR IN Players[]
IF PR.Nr=Nr 
BREAK
ENDIF
NEXT

ENDFUNCTION


Sowas macht eine Kopie
Code (glbasic) Select

FUNCTION FindPlayer:Nr, PR AS TPlayer

FOREACH P IN Players[]
IF P.Nr=Nr 
PR=P
BREAK
ENDIF
NEXT

ENDFUNCTION



#32
Das Funktionen einfach nur Ja/Nein zurück geben wenn sie das gemacht haben was sie sollten
finde ich nützlich. Zumindest bei den Dingern die was laden/speichern.

Wenn LoadFont einen Rückgabewert hätte :

IF LOADFONT("xxxxxxxxx.png", 1)=false then Debug "Font nicht gefunden ..."

Die Klammern sollten dann aber optional sein wenn man keinen Wert braucht.
LOADFONT "xxxxxxxxx.png", 1
#33
Wenn LoadFont einen Rückgabewert hätte könnte man das so machen.

IF LOADFONT("test.png", 1)=false then Debug "Font nicht gefunden ..."

Ich schreib das mal als Wunsch  :whistle:
#34
@Kitty Hello
jo, das geht dann, danke.

Habs aus dem Beispiel in der Hilfe, also da stand das drunter.
Die könnte nun einen Kommentar gebrauchen :-)
#35
@Astute Kitsune

Man kann doch trotzdem mal was schaffen was funktioniert und dann werden alle so begeistert sein
das die den anderen Mist nicht mehr benutzen wollen.

Backendlösungen kann man anpassen, wird doch eh immer ständig alles
neu gemacht. Der alte Mist interessiert mich auch nicht.
Nimm Dir ein Beispiel an MS oder Google Web Toolkit.
Die erfinden neue Sprachen oder verwerfen nach ein paar Monaten was User Aufgebaut haben.
Was man vorher abbilden konnte möchte ich schon irgendwie wieder haben nur besser.
An Styling habe ich auch gedacht und das wird einfacher als vorher. Es gibt aber keine extra
CSS Datei . Ich hatte CSS auch schon in den Händen bei einem
Kontentmanagementsystem und war da nicht mit glücklich.

Das Leute an einem Browser arbeiten ist eh dumm, überleg doch mal was wir haben wollen
und was dort getrieben wird fürn Aufwand.
Internet hatte ich damals schon auf dem Amiga als es noch keiner kannte.
Später auf dem PC hatte ich mir mit Visual Basic einen Webserver geschrieben
der Seiten generiert für einen Kontaktanzeigen Markt. Natürlich aufbauend
auf das was sich standard nannte^^

An GLBasic würde nur ein paar neue Befehle bekommen.

Der Flash Player war auch stur gedacht, der könnte das umsetzen was ich möchte
aber die sind da zu blöd für.

Wenn ich die Zeit dazu finde mache ich mal ein Prototyp.

Zu Google Web Toolkit : Es ist so als geht man durchs Wasser gegen die Strömung, ganz toll^^
#36
Ich habe eben durch Zufall die HIBERNATE Funktion gefunden.
Die ist ganz nützlich.
Aber sobald ich die einbaue bekommt man von MOUSEAXIS keine gescheiten Werte mehr.
MouseWheel z.B. kommt noch ab und an ganz kurz durch und Geschwindigkeit ist 0.

Code (glbasic) Select

REPEAT

GETSCREENSIZE w,h
STRETCHSPRITE bgsprite3, 0, 0, w, h

//0=X - Geschwindigkeit
//1=Y - Geschwindigkeit
//2=Rad (1 auf, -1 ab)
//3=linke Maustaste
//4=rechte Maustaste
//5=mittlere Maustaste

mxsp%=MOUSEAXIS(0)
mysp%=MOUSEAXIS(1)

wheel%=MOUSEAXIS(2)
bm%=MOUSEAXIS(5)

b1click=b1
b2click=b2
MOUSESTATE mx,my,b1,b2
IF b1<>b1click AND b1=1
b1click=TRUE
ELSE
b1click=FALSE
ENDIF
IF b2<>b2click AND b2=1
b2click=TRUE
ELSE
b2click=FALSE
ENDIF

keyasc$ = INKEY$( )
keycode% = KEY(1) //ESC

//...

PRINT "mx="+mx+" my="+my + " b1click="+b1click,0,0
PRINT "mxsp="+mxsp+" mysp="+mysp +" wheel=" + wheel,0,16

SHOWSCREEN
HIBERNATE //dann geht mein Mouse Move nicht mehr und das Wheel

UNTIL FALSE
#37
@backslider
ja foreach solle alle Elemente durchlaufen, da sind wir gleicher Meinung.
#38
IDE/Syntax / Re: =>
2012-Apr-23
@Moru
PHP is gay :-)
can be much easier
the $ must confuse you also ;-)
#39
Habs grad gelesen.

Warum überhaupt Mehrdimensional?
Bei der Tilemap z.B. brauch das Tile was gemalt werden soll doch nur die x,y Pos.
Kann dann doch alles in eine Liste.


#40
IDE/Syntax / Re: =>
2012-Apr-23
i found a new example why i write this  :S

IF LEN(self.text$)=>1 THEN ...
#41
IDE/Syntax / Re: =>
2012-Apr-22
the x coord move from left to right so the equal comes first then the greater.
i transfer what i see in a program.
for me is this => inside <=
it looks like two arrows , you can better read and understand this as >= <=

#42
IDE/Syntax / Re: =>
2012-Apr-22
i think not all but.
glbasic can translate it also before compiling the c source.

= and > is two in one , a human need no order , its equal or greater , greater or equal.

Visual Basic 2010 and VisualBasic 6 replace the two chars on the fly in the editor.
BlitzBasic3D understand =>
BlitzMax understand =>
DarkBasic Pro understand =>

you can see in 5 of 5 i can write it and its a entrenched habit :-)
#43
IDE/Syntax / =>
2012-Apr-22
=> ist Syntyx error und man muß >= schreiben.
Das läßt sich doch bestimmt einfach erweitern.

Wenn ich z.B. gucken möchte ob die Mauspos. in einem Rechteck ist schreibe ich immer mx=>x1
weil = der Rand ist und es dann nach innen mit > weiter geht.
Auf der rechten Seite schreibe ich mx<=x2
Die XY Koordinaten gehen ja auch von links nach rechts und oben nach unten.
#44
Habe nun alles auf IDs umgefummelt und nun macht es was ich will  :-*
#45
GLBasic - de / Re: Break ???
2012-Apr-22
Hm,ja danke muß ich dann ja wohl.
Ich dachte das wär das Trennzeichen für Befehle wie üblich :