Funktionen ersetzen. Aber wie?
Übersicht

![]() |
Suco-XBetreff: Funktionen ersetzen. Aber wie? |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi
Ich habe ein großes Problem. Ich habe das Max2D Imagefont Zeug und ich habe meine eigene Lib. Über Framework und Import will ich mir aussuchen können welche Lib ich benutzen will. Praktischerweise haben die beiden Libs auch noch gleiche Funktionsnamen. Somit müsste ich auch den Code nicht sonderlich verändern wenn ich bei den Libs umherschalte. BlitzMax sagt mir aber : Duplicate identifier 'DrawText' in moduls 'pub.xyz' and 'brl.max2d' Ich dachte er ersetzt die Funktionen einfach nach der Reihenfolge der Imports z.b. import brl.max2d import pub.xyz Die Funtkionen wie z.b. DrawText sollten jetzt aus pub.xyz genommen werden. Ist aber nicht der fall. Aber direkt in meinem Code kann ich die Funktionen überschreiben, ohne gemecker. Imports machen aber Probleme. Ich sehe da keine Möglichkeit da die Bmax ImageFont Lib so sehr mit dem Max2D Modul verkeilt ist. Weiss jemand die Lösung? Dank im vorraus. Mfg Suco |
||
Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB |
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
man kann evtl. funktionpointer nehmen - mußt aber gleich viele parameter haben...
andersrum wird man das nur schwer ändern können denke ich, weil es sehr ins system verzahnt ist... z.B. FontLoader benutzt auch images oder du mußt die module ändern die dieses modul importieren... |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hast du deine eigenen Klassen von denen von FontLib erben lassen?
Dann sollte das eigentlich kein Problem sein, dass du überschreibst, was du anders haben willst. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Suco-XBetreff: ........ |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi.
Ich habe eine eigene Klasse für meine FontLib geschrieben. Also nichts was sich in die Bmax Module einfügt(Blick auch ehrlich gesagt nicht wie das am besten gemacht wird). In meinem Spielcode kann ich die Bmax Funktionen überschreiben. Z.b. habe ich mittlerweile Code: [AUSKLAPPEN] Function DrawText(Txt:String,x:Float,y:Float) DCDrawText(Txt,x,y) End Function Function TextWidth:Float(Txt:String) Return DCTextWidth(Txt) End Function Function TextHeight:Float(Txt:String) Return DCTextHeight(Txt) End Function Meine Fontlib Befehle bisschen umbenannt und dann im Hauptcode die max2d Funktionen überschrieben. Klappt ohne Probs. Deshalb verstehe ich auch nicht wieso das nicht auch mit Modulen klappt.... Irgendwie bekomm ich im Englischen Board auch keine passenden Anregungen. Muss doch irgendeinen passenden Weg geben. @Dreamora : Versteh nicht ganz wie du das meinst. @TheShadow : Ansich keine schlechte Idee mit den Funktionspointern. Klappt aber leider nicht wie gewollt. Das die Fontsachen mit dem Max2D Modul so verkeilt sind ist auf den ersten Blick echt schade(Ka obs da tieferen Sinn gibt). Mir wäre ein Max2D und ein MaxFont2D Modul lieber. Aufteilen könnte ich es selber. Ziehe es aber vor so zu Programmieren das es auch andere Leute benutzen können. Mfg Suco |
||
Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB |
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
und wofür machst du genau neue text-routinen?
verstehe ich nicht so ganz... die vorhandene ist doch gut |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
Suco-XBetreff: ........ |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die jetzige ist doch nicht für das Laden von bmp Fonts ausgelegt. Oder habe ich da was verpasst?
Mfg Suco |
||
Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB |
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich hab selbst nur ttf-fonts geladen - aber ich weiß noch, daß ich gelesen habe, dass einer png-fonts mit alpha geladen hat und diese dann ganz normal darstellte - weil die fonts werden sowieso als images gespeichert...
es gibt da so eine standard-schrift in bbmax. diese schrift ist eine 1-bit-image-datei (blitz.fon) in module ordner... musst nur gucken wie das gemacht wurde... an sich muss man so ein type erstellen und dann mit daten füllen... dann setfont anwenden und fertig |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
Suco-XBetreff: ....... |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja, TTF Fonts gehen ja wunderbar. Ist auch eigenes Format mit eigenen Informationen. Ich wüsste aber jetzt nicht wie ich die Daten von meinem Format da einfügen könnte. Abgesehen davon kann ich mit dem Bmax 1 Bit Format da nichts anfangen. Bitmap Fonts sollen ja schön Bunt sein.
Habe mich jetzt mal gründlich im Modul Ordner bei den Fonts umgeschaut und muss gestehen, Häääh? Ich verstehe nicht wirklich wie ich dort meinen Font Code am besten einfügen könnte. Denke aber das diese Module gerade für solche Zwecke ausgelegt sind(z.b. fand ich AddFontLoader). Wenn jemand noch irgendwelche Informationen dazu hat, her damit. Mfg Suco |
||
Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group