Inventarobjekte maskiert ins Inventarbild kopieren
Übersicht BlitzBasic Allgemein
GERMAXBetreff: Inventarobjekte maskiert ins Inventarbild kopieren |
Do, Nov 25, 2010 23:27 Antworten mit Zitat |
|
---|---|---|
Momentan arbeite ich daran, kleine icons in mein Inventar zu kopieren. Dabei benutze ich folgendes:
If showinv% =True Then CopyRect 0,0,48,48,100,67,ImageBuffer(mana),ImageBuffer(inventar) CopyRect 0,0,48,48,147,67,ImageBuffer(hp),ImageBuffer(inventar) DrawBlock inventar,192,144 End If Das funktioniert so auch (zum Testen), aber um meine icons herum will ich die Farbe ausstanzen, weil das Inventar einen pergamentähnl. Hintergrund hat. Geht sowas überhaupt? Oder gibt es noch eine grundsätzl. andere Methode, um das Inventar aufzubereiten und anzuzeigen? |
||
Erfolglos begonnene BB-Projekte:TRON/CONVOY/MYSTIC |
ToeB |
Do, Nov 25, 2010 23:48 Antworten mit Zitat |
|
---|---|---|
Ja !
Am besten speicherst du die Inventar-Daten in ein 2D-Array, und dann malst du die Bilder einfach in einer Forschleife ! mfg ToeB |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
XeresModerator |
Do, Nov 25, 2010 23:48 Antworten mit Zitat |
|
---|---|---|
Warum nimmst du überhaupt Imagebuffer? Du kannst einfach das Bild einer Variablen zuweisen (und Maskimage benutzen).
Das raus Kopieren müssten du überhaupt nur bei Änderungen machen. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
Dottakopf |
Fr, Nov 26, 2010 8:45 Antworten mit Zitat |
|
---|---|---|
direkt in/auf den buffer zu malen wird wohl wesentlich schneller sein, wenn mans richtig macht, denk ich
Allerdings sollten Grafiken mit maskimage ausreichen, außer du hast vor 5000 icons mit lustigen blinkeffekten zu zeichnen und einer sich aktuellisierenden Tilemap im Hintergrund zu arbeiten. Gruß Dottakopf |
||
Rechtschreibfehler gelten der allgemeinen Belustigung! |
GERMAX |
Fr, Nov 26, 2010 23:05 Antworten mit Zitat |
|
---|---|---|
CopyRect 48,0,48,48,0,0,ImageBuffer(mana),ImageBuffer(iobjects) ;icons
CopyRect 81,0,9,9,38,35,ImageBuffer(invzs),ImageBuffer(iobjects) ;minifont If showinv% Then DrawBlock inventar,192,144:DrawImage iobjects,192+121,144+64 Also momentan habe ich das so gemacht, die maskierten Objekte in ein leeres image zu kopieren (was beim Erstellen ja black ist). Anschliessend kommt noch die Quantität unten rechts hin. Dann wird das leere Inventar abgebildet und davor dann das (mask.) Bild mit den Objekten und Mengen (vor eine 3-D Szene). Wenn ich dann noch grabimage mache, müsste das ganze Bild im Speicher liegen. Das hätte für mich den Vorteil, dass das zum Anzeigen viel weniger CPU-Zeit frisst, weil es natürlich einfach rechteckig ist und man das Teil dann auch noch einfach aus-/einblenden kann. |
||
Erfolglos begonnene BB-Projekte:TRON/CONVOY/MYSTIC |
Neoxit |
Fr, Dez 03, 2010 1:02 Antworten mit Zitat |
|
---|---|---|
Ich hätte es auch wie eben schongesagt halt mit nem Array oder einem Type gemacht.
Jedes Item eine ItemID gegeben und deinem Inventar für jeden platz ebenfalls eine ID. Bspw: Du hast 24 Inventarplätze, und legst etwas hinein, dann überprüfe ob was frei ist, dann setze das Image der ItemID auf die Position deiner PlatzID. So oder so ähnlich habe ich es immer gemacht. Viel erfolg weiterhin |
||
Übersicht BlitzBasic Allgemein
Powered by phpBB © 2001 - 2006, phpBB Group