049
04.09.2004, 23:49 Uhr
schrottXXL
Gebranntes Kind Parzellenbesitzer
Beiträge: 1459 Dabei seit: 07.10.2003, 19:53 Uhr |
Ich bin leider erst heute abend dazu gekommen, mich um das Problem zu kümmern ... und naja ... wirklich erfolgrecih war ich bislang nicht. Vielleicht ist es ja auch einfach zu spät und ich kann nicht mehr richtig denken?
Also ... ich habe jetzt folgenden Mist zusammengeschrieben: (dazu 10 (!) Picture-Boxen erstellt):
format_source('If firstst = 1 And FOstart.loaded = 1 Or resized = 1 And FOstart.loaded = 1 Then PICtrf0SW.Width = PICschwamm.Width * (Val(z1) - Val(z2) * 0) * ma�stabX PICtrf0SW.Height = PICschwamm.Height * (Val(z1) - Val(z2 * 0)) * ma�stabY PICtrf0.Width = PICschwamm.Width * (Val(z1) - Val(z2) * 0) * ma�stabX PICtrf0.Height = PICschwamm.Height * (Val(z1) - Val(z2) * 0) * ma�stabY PICtrf1SW.Width = PICschwamm.Width * (Val(z1) - Val(z2)) * ma�stabX PICtrf1SW.Height = PICschwamm.Height * (Val(z1) - Val(z2)) * ma�stabY PICtrf1.Width = PICschwamm.Width * (Val(z1) - Val(z2)) * ma�stabX PICtrf1.Height = PICschwamm.Height * (Val(z1) - Val(z2)) * ma�stabY PICtrf2SW.Width = PICschwamm.Width * (Val(z1) - Val(z2) * 2) * ma�stabX PICtrf2SW.Height = PICschwamm.Height * (Val(z1) - Val(z2) * 2) * ma�stabY PICtrf2.Width = PICschwamm.Width * (Val(z1) - Val(z2) * 2) * ma�stabX PICtrf2.Height = PICschwamm.Height * (Val(z1) - Val(z2) * 2) * ma�stabY PICtrf3SW.Width = PICschwamm.Width * (Val(z1) - Val(z2) * 3) * ma�stabX PICtrf3SW.Height = PICschwamm.Height * (Val(z1) - Val(z2) * 3) * ma�stabY PICtrf3.Width = PICschwamm.Width * (Val(z1) - Val(z2) * 3) * ma�stabX PICtrf3.Height = PICschwamm.Height * (Val(z1) - Val(z2) * 4) * ma�stabY PICtrf4SW.Width = PICschwamm.Width * (Val(z1) - Val(z2) * 4) * ma�stabX PICtrf4SW.Height = PICschwamm.Height * (Val(z1) - Val(z2) * 4) * ma�stabY PICtrf4.Width = PICschwamm.Width * (Val(z1) - Val(z2) * 4) * ma�stabX PICtrf4.Height = PICschwamm.Height * (Val(z1) - Val(z2) * 4) * ma�stabY PICtrf0SW.PaintPicture PICschwammSW.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2) * 0) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2) * 0) * ma�stabY ', , , , , &H660046 PICtrf0.PaintPicture PICschwamm.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2) * 0) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2) * 0) * ma�stabY ', , , , , &H660046 PICtrf1SW.PaintPicture PICschwammSW.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2)) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2)) * ma�stabY ', , , , , &H660046 PICtrf1.PaintPicture PICschwamm.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2)) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2)) * ma�stabY ', , , , , &H660046 PICtrf2SW.PaintPicture PICschwammSW.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2) * 2) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2) * 2) * ma�stabY ', , , , , &H660046 PICtrf2.PaintPicture PICschwamm.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2) * 2) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2) * 2) * ma�stabY ', , , , , &H660046 PICtrf3SW.PaintPicture PICschwammSW.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2) * 3) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2) * 3) * ma�stabY ', , , , , &H8800C6 PICtrf3.PaintPicture PICschwamm.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2) * 3) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2) * 3) * ma�stabY ', , , , , &H660046 PICtrf4SW.PaintPicture PICschwammnassSW.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2) * 4) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2) * 4) * ma�stabY ', , , , , &H8800C6 PICtrf4.PaintPicture PICschwammnass.Picture, 0, 0, PICschwamm.Width * (Val(z1) - Val(z2) * 4) * ma�stabX, PICschwamm.Height * (Val(z1) - Val(z2) * 4) * ma�stabY ', , , , , &H660046 firstst = 0 resized = 0 End If ')und dann beim Schwammwurf: format_source('For trf = 0 To 4 Picture1.Cls If auflösung = 1 Then Picture1.PaintPicture PICback.Image, 0, 0, FOmain.Width, FOmain.Height Picture1.PaintPicture Picture3.Picture, myX, myY, Picture3.Width * ma�stabX, Picture3.Height * ma�stabY, , , , , &H8800C6 Picture1.PaintPicture Picture2.Picture, myX, myY, Picture3.Width * ma�stabX, Picture3.Height * ma�stabY, , , , , &H660046 If trf < 4 Then If trf = 0 Then Picture1.PaintPicture PICtrf0SW.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2) * 0), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2) * 0), , , , , , , &H8800C6 Picture1.PaintPicture PICtrf0.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2) * 0), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2) * 0), , , , , , , &H660046 End If If trf = 1 Then Picture1.PaintPicture PICtrf1SW.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2)), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2)), , , , , , , &H8800C6 Picture1.PaintPicture PICtrf1.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2)), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2)), , , , , , , &H660046 End If If trf = 2 Then Picture1.PaintPicture PICtrf2SW.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2) * 2), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2) * 2), , , , , , , &H8800C6 Picture1.PaintPicture PICtrf2.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2) * 2), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2) * 2), , , , , , , &H660046 End If If trf = 3 Then Picture1.PaintPicture PICtrf3SW.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2) * 3), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2) * 3), , , , , , , &H8800C6 Picture1.PaintPicture PICtrf3.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2) * 3), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2) * 3), , , , , , , &H660046 End If Else Picture1.PaintPicture PICtrf4SW.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2) * trf), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2) * trf), , , , , , , &H8800C6 Picture1.PaintPicture PICtrf4.Image, klickX - 0.5 * PICschwamm.Width * ma�stabX * (Val(z1) - Val(z2) * trf), klickY - 0.5 * PICschwamm.Height * ma�stabY * (Val(z1) - Val(z2) * trf), , , , , , , &H660046 End If ')Ich blick da teilweise selbst nur nach nach gründlicher Analyse durch Problem: Es ist kaum schneller geworden und ewig mehr Programmcode + Picture-Boxen. Die Berechnung der Position kann ich ja schlecht auch noch wo anders machen, muss ja topaktuell sein ... Also vor der Einführung der Vorskalierung war das richtig einfach .
myX, myY = Position Opfer klickX, klickY = Klickposition z1, z2 = nicht weiter relevant, Variablen, damit für verschiedene Waffen verschiedene Grö�en einstellbar sind. Beim Finke ist z1=2 und z2=0.4 trf = eben wie klein der Schwamm schon ist ma�stabX, ma�stabY = bei Auflösung von 1024*768 = 1, sonst eben entsprechend anders.
Kann mir jemand noch Tipps geben oder bin ich ein hoffnungsloser Fall?
P.S.: Könnt ihr nicht mal diese alberne Doppel-Post-Sperre entfernen? Ich spam mich doch nicht selber zu ... ----- Bleib cool man(n)!
Und lass dich nicht durch Philipp's Gespamme aus der Ruhe bringen ... Dieser Beitrag wurde am 04.09.2004 um 23:50 Uhr von schrottXXL verändert |