maskimage bei tilesets

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

tobias12

Betreff: maskimage bei tilesets

BeitragMo, Nov 24, 2008 21:05
Antworten mit Zitat
Benutzer-Profile anzeigen
guten abend
ich habe zurzeit ein kleines grösseres problem und ich weiss nicht mehr weiter. habe die sufu schon benutzt, jedoch löste sie nicht mein prob.

also mein problem ist, das ich ein tileset lade und danach noch ne maske setze mit maskimage.
jedoch funzt es nicht ganz richtig.

solange ich die tiles auf dem bildschirm bewege, funkt es, es zeichnet mir die maske, jedoch sobald ich ich die tiles in meiner karte speichere, bzw die rechte maustaste drücke, zeichnets mir nicht mehr die korrekte maske sondern einen schwarten hintergrund.
an was liegt das??
(benütze nicht jpg und die rgb farben stimmen überein und benütze nicht drawblock)

Code: [AUSKLAPPEN]

Graphics 640,480,32,1
SetBuffer BackBuffer()
Global anz = 35
Dim map(20,15)

Global x,y
Global mapx,mapy
Global tile = 0
Global mx,my
Global zeichnen
Global tileset

TFormFilter 0

tileset = LoadAnimImage("image2.bmp",32,32,0,anz)
MaskImage tileset, 255, 0, 255
maus = LoadImage("maus.bmp")






For y=0 To 14
For x=0 To 19
   map(x,y)=1
Next
Next

Repeat

Cls



For y = 0 To 14
For x = 0 To 19
   DrawImage  tileset, x*32,y*32,map(x,y)
Next
Next



If MouseHit(2) Then
tile = tile + 1
   If tile = anz Then tile = 0
EndIf


DrawImage tileset,mx*32,my*32,tile ; hier funk die maske nocht
Color 255,255,255
Rect mx*32,my*32,32,32,0

mx = MouseX()
my = MouseY()

If MouseDown(1) Then ; ab hier nicht mehr

scroll()
map(mapx,mapy) = tile

EndIf[quote][/quote]

TimBo

BeitragDi, Nov 25, 2008 14:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi Tobias,

ich könnte mich irren, aber versuche mal jedes Animationsimage eine Transparenz zuzuweisen.
Also For i=0 to anz
maskimage ...
next

vll. geht es dann
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31
hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht.
 

tobias12

BeitragDi, Nov 25, 2008 22:24
Antworten mit Zitat
Benutzer-Profile anzeigen
geht auch ned
das komisch ist ja, solange ich nicht die linke maustaste drücke zeichnets mir die maske, danach jedoch nicht mehr

TimBo

BeitragDi, Nov 25, 2008 22:33
Antworten mit Zitat
Benutzer-Profile anzeigen
was passiert denn in der Function Scroll ?
Geht die Hauptschleife noch weiter , sehe kein Until .
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31
hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht.
 

tobias12

BeitragDi, Nov 25, 2008 22:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Graphics 640,480,32,1
SetBuffer BackBuffer()
Global anz = 35
Dim map(20,15)

Global x,y
Global mapx,mapy
Global tile = 0
Global mx,my
Global zeichnen

Global ZaehlStart,FramesJeSekunde ,Frames
TFormFilter 0

Global tileset = LoadAnimImage("image2.bmp",32,32,0,anz)
MaskImage tileset, 255,0, 255


maus = LoadImage("maus.bmp")






For y=0 To 14
For x=0 To 19
   map(x,y)=1
Next
Next

Repeat

Cls



For y = 0 To 14
For x = 0 To 16
   DrawImage  tileset, x*32,y*32,map(x,y)
Next
Next

If KeyDown(2) Then tile = 0
If KeyDown(3) Then tile = 1
If KeyDown(4) Then tile = 2
If KeyDown(5) Then tile = 3
If KeyDown(6) Then tile = 4

If MouseHit(2) Then
tile = tile + 1
   If tile = anz Then tile = 0
EndIf



If MouseX()<20*30 Then mx=MouseX()/32;Solange sich die maus in unserem 10*10 großen Feld befindet, ist mx,my=die Mausposition
If MouseY()<15*30 Then my=MouseY()/32



DrawImage tileset,mx*32,my*32,tile
Color 255,255,255
Rect mx*32,my*32,32,32,0

mx = MouseX()
my = MouseY()

If MouseDown(1) Then

scroll()
map(mapx,mapy) = tile

EndIf

 
DrawImage maus,mx,my

If KeyHit(31) Then save()

If KeyHit(38) Then LoadMap("karte.map")

fps

 
Flip
Until KeyHit(1)
End


Function scroll()

mapx = mx/32
mapy = my/32

End Function
 

Function save()

karte$ = WriteFile("karte.map")

For y = 0 To 15
For x = 0 To 20
   WriteLine(karte$,tile)
   WriteInt(karte$,map(x,y))
Next
Next

CloseFile(karte$)
End Function


Function LoadMap(FMap$)
   
   Local Karte = ReadFile(FMap$)
   Local X,Y
   
   For Y = 0 To 15
      For X = 0 To 20
         tile = ReadLine(Karte)
         Map(X,Y) = ReadInt(Karte)
      Next
   Next
   
   CloseFile(Karte)
   Return True
   
End Function

Function FPS()
Frames = Frames + 1

 If ZaehlStart + 1001 < MilliSecs() Then
  FramesJeSekunde = Frames
  Frames = 0
  ZaehlStart = MilliSecs()
 EndIf

 Text 550, 10, FramesJeSekunde + " FPS"
 Text 550,30, mx
 Text 580,30, my
End Function


das ist der ganze code.
ich weiss, ein bisschen unübersichtlich, aber da ich halt ein bisschen am ausprobieren bin kann dies noch schnell passieren^^.





habe nun etwa 10 verschiedenen orten maskimage eingefügt, anderes bild probiert, aber das resultat ist immer noch das gleiche.

bitte um hilfe, danke

TimBo

BeitragMi, Nov 26, 2008 23:39
Antworten mit Zitat
Benutzer-Profile anzeigen
kannst du mir das Grafikzeugs mal schicken ?
einfach hochladen und link per PM an mich oder so

will helfen, und nicht dein Zeugs "klauen"
bin zu Faul mir ein eigenes zum Testen zu machen ^^
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31
hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht.
 

tobias12

BeitragDo, Nov 27, 2008 14:56
Antworten mit Zitat
Benutzer-Profile anzeigen
ich werde ich

die tilesets ist eh nur mal ein bisschen zusammengebastelt von adenren tilesets, da ich erst ein bisschen am herumporbieren bin.

TimBo

BeitragFr, Nov 28, 2008 16:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

das Problem liegt nicht am Code.
Das Tileset war mal in JPG oder ähnlich gespeichert, dadurch ist die Hintergrundfarbe bei einigen Tiles nicht 255,0,255 also lila.
Wirst nicht drumerhumkommen, jedes "etwas lila"-Pixel neu zu machen. aber dann mit dem richtigen werten Wink

Viele Grüße
TimBo

und noch viel erfolg mit deinem Map-Editor , sieht echt gut aus !
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31
hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht.
 

tobias12

BeitragFr, Nov 28, 2008 19:18
Antworten mit Zitat
Benutzer-Profile anzeigen
aha, okey herzlichen danke

tobias12

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group