Langsamer Code?

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Jo0oker

Betreff: Langsamer Code?

BeitragFr, März 30, 2007 11:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo leute,
wieso ist mein Code(Spiel ) so langasam???????
Manchmal dauert es 9 min bis es gestartet ist????? Sad
Hier mal mein Code:
Code: [AUSKLAPPEN]

Graphics 1024,768,32,2
SetBuffer BackBuffer()



Global taskleiste = LoadImage("gfx\taskleiste.bmp")
Global bg = LoadImage("gfx\bg.bmp")
Global modul1 = LoadImage("gfx\modul.bmp")
Global modul2 = LoadImage("gfx\modul.bmp")
Global modul3 = LoadImage("gfx\modul.bmp")
Global modul4 = LoadImage("gfx\modul.bmp")
Global modul5 = LoadImage("gfx\modul.bmp")
Global window = LoadImage("gfx\window.bmp")
Global annahme = LoadImage("gfx\annahme.bmp")
Global jamodul = LoadImage("gfx\jamodul.bmp")
Global achtung = LoadImage("gfx\achtung.bmp")
MaskImage achtung ,255,0,0

Global gehaltnehmen
Global mitarbeiter_func = 1
Global mitarbeiter_set = 1
Global mitarbeiter = 1
;;;ACHTUNG
Global ach = 0


;;;;GEHALT
Global gehalt = 1

;;;aufgaben1
Global aufgabe1 = 1
Global aufgabe1_auf = 0
Global auf_set = 0
Global aufgabe1_zeit = 0
Global mal_aug1 = 3
Global  Timer_aufg1=MilliSecs()
Global Zeit_aufg1=60

;;;;;Aufgabe2
Global aufgabe2 = 1
Global aufgabe2_auf = 0
Global auf_set2 = 0
Global aufgabe2_zeit = 0
Global mal_aug2 = 3
Global  Timer_aufg2=MilliSecs()
Global Zeit_aufg2=60
;;;;;;;;;;;;;;;;;ZEIT
Global  Timer=MilliSecs()
Global Zeit=1
Global tag = 1
Global monat = 1
Global monat2 = 1
Global jahr = 2007
;;;;;;;;;;;;;;;;;;;;;
Global buy = 0
Global lkw = 1
Global geld = 10000
;;;BANK
Global zuleihen
Global zins
Global zins_satz
Global immonat
Global keinleih = 0
Global gesammt_z
;;;;
;;;;;;;;;;;;;;;;NAME

Global firmen_name$ = "---kein Name---"

;;;;
Global winkel1
Global winkel2

tmp=monat

tmp_bank=monat



Global mx1 = 710
Global mx2 = 710
Global mx3 = 710
Global mx4 = 710
Global mx5 = 710

Global pointer = LoadImage("gfx\pointer.bmp")
MaskImage taskleiste ,255,2,3

font = LoadFont("Times New Roman",15,0,0,0)

SetFont font
Global mx
Global my



;;;;Zeit laden


times = OpenFile("save\times.timesdat")
zeit = ReadInt(times)
tag = ReadInt(times)
monat = ReadInt(times)
monat2 = ReadInt(times)
jahr = ReadInt(times)


CloseFile times






;;;;;;;;;;;;;;;;;;;;;RESTLADEN;;;;;;;;;;;;;;;;;;;;;;;;;,,
save = OpenFile("save/1dat.sav")
;;MITARBEITER
mitarbeiter = ReadInt(save)
gehalt = ReadInt(save)
;;MAUS
mx = ReadInt(save)
my = ReadInt(save)
;;;AUFGABE1SAVE
aufgabe1 = ReadInt(save)
aufgabe1_auf = ReadInt(save)
auf_set = ReadInt(save)
aufgabe1_zeit = ReadInt(save)
mal_aug2 = ReadInt(save)
Timer_aufg1 = ReadInt(save)
Zeit_aufg1 = ReadInt(save)
;;;;AUFGABE2SAVE
aufgabe2 = ReadInt(save)
aufgabe2_auf = ReadInt(save)
auf_set2 = ReadInt(save)
aufgabe2_zeit = ReadInt(save)
mal_aug2 = ReadInt(save)
Timer_aufg2 = ReadInt(save)
Zeit_aufg2 = ReadInt(save)
;;;ITEMS
lkw = ReadInt(save)
geld = ReadInt(save)
;;;;BANK
immonat = ReadInt(save)
zuleihen = ReadInt(save)
zins = ReadInt(save)
zins_satz = ReadInt(save)
keinleih = ReadInt(save)
gesammt_z = ReadInt(save)
;;;NAMEN
firmen_name$ = ReadString(save)
CloseFile save









SeedRnd MilliSecs()

Repeat
Cls
mx = MouseX()
my = MouseY()

;RenderWorld
;UpdateWorld
DrawImage bg, 0,0

DrawImage taskleiste, 0,691
DrawImage modul1, 4,mx1
DrawImage modul2, 73,mx2
DrawImage modul3, 141,mx3
DrawImage modul4, 215,mx4
DrawImage modul5, 289,mx5



Text 11,mx1+5,("Option")
Text 82,mx2+5,("Büro")
Text 145,mx3+5,("Mitarbeiter")
Text 224,mx4+5,("Logistik")
Text 297,mx5+5,("Aufträge")
 
Text 15,15,("Ihr Geld: " + geld + "€"+"                       Mitarbeiter: " + mitarbeiter + "                        LKW´s: " + lkw + "      Gehalt: " + gehalt)

;;;;;;;;;BERECHNUNG DES GEHALTES
If monat2<>tmp Then geld = geld - gehalt
If monat2<>tmp And geld < 100 Then achtung()

monat2 = tmp




;;;
Text 700,15,("Im Monat zuzahlene Summe an die Bank: " + immonat + ". Im Jar " + gesammt_z)
Text 700,30,("Ihre Zinsen: " + zins_satz)


;;;;;;NAME

Text 500,15,("Ihr Firmenname: " + firmen_name)
;;;;;;

;;;moves
;;;;UHRZEIT


Text 800,710,("Echte Uhrzeit: " + CurrentTime() + " Datum: " + CurrentDate() )
;;;modul1
If ImagesOverlap(modul1,4,mx1,pointer,mx,my) = 1 Then mx1 = mx1 - 1

If ImagesOverlap(modul1,4,mx1,pointer,mx,my) = 0 Then mx1 = mx1 + 1
If mx1 <=690 Then mx1 = 690
If mx1 => 710 Then mx1 = 710
;;;modul2
If ImagesOverlap(modul2,73,mx2,pointer,mx,my) = 1 Then mx2 = mx2 - 1

If ImagesOverlap(modul2,73,mx2,pointer,mx,my) = 0 Then mx2 = mx2 + 1
If mx2 <=690 Then mx2 = 690
If mx2 => 710 Then mx2 = 710

;;;modul3
If ImagesOverlap(modul3,141,mx3,pointer,mx,my) = 1 Then mx3 = mx3 - 1

If ImagesOverlap(modul3,141,mx3,pointer,mx,my) = 0 Then mx3 = mx3 + 1
If mx3 <=690 Then mx3 = 690
If mx3 => 710 Then mx3 = 710
;;;modul4
If ImagesOverlap(modul4,215,mx4,pointer,mx,my) = 1 Then mx4 = mx4 - 1

If ImagesOverlap(modul4,215,mx4,pointer,mx,my) = 0 Then mx4 = mx4 + 1
If mx4 <=690 Then mx4 = 690
If mx4 => 710 Then mx4 = 710
;;;modul5
If ImagesOverlap(modul5,289,mx5,pointer,mx,my) = 1 Then mx5 = mx5 - 1

If ImagesOverlap(modul5,289,mx5,pointer,mx,my) = 0 Then mx5 = mx5 + 1
If mx5 <=690 Then mx5 = 690
If mx5 => 710 Then mx5 = 710
;;;windown_function
;optionen.....
If ImagesOverlap(modul1,4,mx1,pointer,mx,my) = 1 Then f_opt = 1

If ImagesOverlap(modul2,73,mx2,pointer,mx,my) = 1 Then f_opt = 2

If ImagesOverlap(modul3,141,mx3,pointer,mx,my) = 1 Then f_opt = 3

If ImagesOverlap(modul4,215,mx4,pointer,mx,my) = 1 Then f_opt = 4

If ImagesOverlap(modul5,289,mx5,pointer,mx,my) = 1 Then f_opt = 5


If aufgabe1_auf = 1  Then aufgabe1_func()
If aufgabe2_auf = 1  Then aufgabe2_func()



zeit1()


If MouseHit(1) = 1 Then s_opt = 1
FlushMouse

If s_opt = 1 And f_opt = 1 Then windowopt()
If s_opt = 1 And f_opt = 2 Then windowbuero()
If s_opt = 1 And f_opt = 3 Then windowmit()
If s_opt = 1 And f_opt = 4 Then windowlogi()
If s_opt = 1 And f_opt = 5 Then windowauft()

FlushKeys

;;;AUCH BANK
If monat <> tmp_bank Then geld = geld - immonat
If monat<>tmp_bank Then gesammt_z = gesammt_z - immonat
monat = tmp_bank
If gesammt_z < 0 Then keinleih = 0
If gesammt_z => 1 Then keinleih = 1
If gesammt_z <= 0 Then gesammt_z = 0
If gesammt_z <= 0 Then keinleih = 0
If gesammt_z <= 0 Then immonat = 0



save()
;;;;;;;;;;;;;;;;;;;;;ACHTUNG


DrawImage pointer,mx,my
Flip
Until KeyHit(1)


Function windowopt()
DrawImage window,60,80
Color 0,0,0

Text 80,100,("Optionen")




If KeyDown(49) Then firmen_name$ = Input$("Bitte Firmenname eingeben: ")

Locate 100,130

Text 100,150,("Mit N ändern Sie ihren Firmennamen.")

DrawImage modul2 ,100,170

Text 103,173,("Name(N)")


Color 255,255,255

End Function


Function windowbuero()
DrawImage window,60,80
DrawImage modul1 ,100,240
DrawImage modul1 ,100,390


Color 0,0,0
Text 100,150,("Um ein LKW zu kaufen drücken Sie bitte K")
Text 100,165,("Ein LKW kostet 40000€, wenn du nicht genug Geld hast,")
Text 100,180,("dann könntest du dir eventuel etwas bei der Bank leihen.")
If geld < 40000 Then Text 100,210,("Nicht genug Geld!")
If mitarbeiter =< lkw Then Text 100,220,("Nicht genug Mitarbeiter!")

Text 103,243,("Kaufen(K)")
If geld > 40000 And mitarbeiter > lkw And KeyHit(37) Then buy = 1
If buy = 1 Then  lkw = lkw + 1
If buy = 1 Then geld = geld - 40000

;;;;;;BANK

Text 103,393,("Bank(B)")

If keinleih = 0 And KeyHit(48) Then bank()
If keinleih = 1 And KeyHit(48) Then Text 103,403,("Sie haben bereits einen Kredit.")
Text 100,320,("Um einen Kredit aufzunehmen drücken Sie B.")
Text 100,330,("Dann geben Sie die Summe ein, die die Bank ihnen leihen soll.")
Text 100,340,("Die Summe die Sie im Monat bezahlen müssen wird automatisch")
Text 100,350,("abgebucht. Wenn die Summe null ist dann können Sie einen neuen Kredit aufnehmen.")



Color 255,255,255
Text 80,100,("Büro")





buy = 0




End Function


Function windowmit()
DrawImage window,60,80

Text 80,100,("Mitarbeiter")
Text 100,150,("Mitarbeiter einstellen?")
Text 100,200,("Jetzt einstellen: ")
DrawImage jamodul,400,200
Text 405,204,("Einstellen(E)")

If ImagesOverlap(jamodul,400,200,pointer,mx,my) = 1 Then mitarbeiter_func = 2

If MouseHit(1) Then mitarbeiter_set = 2
If mitarbeiter_set = 2 And mitarbeiter_func = 2 Then einstellen()

If KeyHit(18) Then einstellen()









End Function


Function windowlogi()
DrawImage window,60,80

Text 80,100,("Logistik")



End Function

Function windowauft()

DrawImage window,60,80
If aufgabe1 < 3 DrawImage annahme,200,280
Color 0,0,0
Text 80,100,("Aufträge")
Text 100,150,("Hier können Sie Aufträge annehmen.")
Text 100,160,("Um einen Auftrag anzunehmn klicken Sie bitte auf Annehmen")
Text 100,200,("Fahren Sie 40t Metall zu einem Schrotthändler.")
Text 100,210,("Dazu benötigen Sie einen LKW(Lastkraftwagen)")
Text 100,220,("Für diesen Auftrag bekommen Sie 500€.   ")
If aufgabe1_auf = 2 Then Text 500,220,("ERLEDIGT")
Text 100,230,("Anzahl: " + mal_aug1)

If lkw => 1 And aufgabe1 < 3 And ImagesOverlap(annahme,200,280,pointer,mx,my) = 1 Then aufgabe1 = 2
If lkw => 1 And aufgabe1 < 3 And ImagesOverlap(annahme,200,280,pointer,mx,my) = 0 Then aufgabe1 = 1

FlushMouse

If MouseDown(2) = 1 Then auf_set = 1
If auf_set = 1 And aufgabe1 = 2 Then aufgabe1_auf = 1





;;;;2 AUFGABE
Text 100,320,("Du must einer anderen Firma aushelfen,")
Text 100,330,("weil es ein wichtiger auftrag ist zahlen Sie dir")
Text 100,340,("sehr viel.")
Text 100,350,("Du benötigst einen LKW, für die Tour bekommst du 1400€")
If aufgabe2_auf = 2 Then Text 500,350,("ERLEDIGT")

If lkw => 1 And aufgabe2 < 3 And ImagesOverlap(annahme,200,390,pointer,mx,my) = 1 Then aufgabe2 = 2
If lkw => 1 And aufgabe2 < 3 And ImagesOverlap(annahme,200,390,pointer,mx,my) = 0 Then aufgabe2 = 1

If aufgabe2 < 3 And lkw = 0 And ImagesOverlap(annahme,200,390,pointer,mx,my) Or ImagesOverlap(annahme,200,280,pointer,mx,my) Then Text 500,15,("Kein LKW mehr verfügbar!!!!")

If MouseDown(2) = 1 Then auf_set2 = 1
If auf_set2 = 1 And aufgabe2 = 2 Then aufgabe2_auf = 1
If aufgabe2 < 3 DrawImage annahme,200,390
Text 100,370,("Anzahl: " + mal_aug2)


Text 600,400,("1. Aufgabe " + Zeit_aufg1)
Text 700,400,("2. Aufgabe " + Zeit_aufg2)

FlushMouse()


Color 255,255,255



End Function


Function zeit1()
If Timer+10 < MilliSecs() Then
Zeit=Zeit+1
Timer = MilliSecs()
If zeit=0 Then zeit=0

EndIf
If zeit = 24 Then tag = tag + 1
If tag = 30 Then monat = monat + 1
If tag = 30 Then monat2 = monat2 + 1

If monat > 11 Then jahr = jahr + 1
If monat2 > 11 Then jahr = jahr + 1

Text 40,40,("Stunden: " + zeit + " tag " + tag + " Monat " +monat2 + " Jahr " + jahr)
If zeit = 24 Then zeit = 0
If tag  = 30 Then tag = 1
If monat = 12 Then monat = 1
If monat2 = 12 Then monat2 = 1


times = WriteFile("save/times.timesdat")
WriteInt times,zeit
WriteInt times,tag
WriteInt times,monat
WriteInt times,monat2
WriteInt times,jahr


CloseFile times
End Function



Function aufgabe1_func()

If Zeit_aufg1 < 60 Then aufgabe1 = 5
If Zeit_aufg1 = 60 Then lkw = lkw - 1
If Timer_aufg1+100 < MilliSecs() Then
Zeit_aufg1=Zeit_aufg1-1
Timer_aufg1 = MilliSecs()
If Zeit_aufg1=0 And mal_aug1 = 0 Then Zeit_aufg1=0
If Zeit_aufg1=-1 And mal_aug1 = 1 Then Zeit_aufg1=60
If Zeit_aufg1=-1 And mal_aug1 = 2 Then Zeit_aufg1=60
If Zeit_aufg1=-1 And mal_aug1 = 3 Then Zeit_aufg1=60

If Zeit_aufg1 = 0 Then lkw = lkw + 1
If Zeit_aufg1 = 0 Then geld = geld + 500


If Zeit_aufg1 = 0 Then mal_aug1 = mal_aug1 - 1


If mal_aug1 = 3 And Zeit_aufg1 = 0 Then aufgabe1 = 1
If mal_aug1 = 3 And Zeit_aufg1 = 0 Then aufgabe1_auf = 0
If mal_aug1 = 3 And Zeit_aufg1 = 0  Then auf_set = 0
If mal_aug1 = 3 And Zeit_aufg1 = 0  Then aufgabe1_zeit = 0
If mal_aug1 = 3 And Zeit_aufg1 = 0  Then Zeit_aufg1 = 60

If mal_aug1 = 2 And Zeit_aufg1 = 0  Then aufgabe1 = 1
If mal_aug1 = 2 And Zeit_aufg1 = 0  Then aufgabe1_auf = 0
If mal_aug1 = 2 And Zeit_aufg1 = 0  Then auf_set = 0
If mal_aug1 = 2 And Zeit_aufg1 = 0  Then aufgabe1_zeit = 0
If mal_aug1 = 2 And Zeit_aufg1 = 0  Then Zeit_aufg1 = 60

If mal_aug1 = 1 And Zeit_aufg1 = 0  Then aufgabe1 = 1
If mal_aug1 = 1 And Zeit_aufg1 = 0  Then aufgabe1_auf = 0
If mal_aug1 = 1 And Zeit_aufg1 = 0  Then auf_set = 0
If mal_aug1 = 1 And Zeit_aufg1 = 0  Then aufgabe1_zeit = 0
If mal_aug1 = 1 And Zeit_aufg1 = 0  Then Zeit_aufg1 = 60

If mal_aug1 = 0 And Zeit_aufg1 = 0  Then aufgabe1 = 5

If mal_aug1 = 0 And Zeit_aufg1 <= 0  Zeit_aufg1 = 0




EndIf



End Function







Function aufgabe2_func()


If Zeit_aufg2 < 60 Then aufgabe2 = 5
If Zeit_aufg2 = 60 Then lkw = lkw - 1
If Timer_aufg2+100 < MilliSecs() Then
Zeit_aufg2=Zeit_aufg2-1
Timer_aufg2 = MilliSecs()
If Zeit_aufg2=0 And mal_aug2 = 0 Then Zeit_aufg2=0
If Zeit_aufg2=-1 And mal_aug2 = 1 Then Zeit_aufg2=60
If Zeit_aufg2=-1 And mal_aug2 = 2 Then Zeit_aufg2=60
If Zeit_aufg2=-1 And mal_aug2 = 3 Then Zeit_aufg2=60

If Zeit_aufg2 = 0 Then lkw = lkw + 1
If Zeit_aufg2 = 0 Then geld = geld + 500


If Zeit_aufg2 = 0 Then mal_aug2 = mal_aug2 - 1


If mal_aug2 = 3 And Zeit_aufg2 = 0 Then aufgabe2 = 1
If mal_aug2 = 3 And Zeit_aufg2 = 0 Then aufgabe2_auf = 0
If mal_aug2 = 3 And Zeit_aufg2 = 0  Then auf_set2 = 0
If mal_aug2 = 3 And Zeit_aufg2 = 0  Then aufgabe2_zeit = 0
If mal_aug2 = 3 And Zeit_aufg2 = 0  Then Zeit_aufg2 = 60

If mal_aug2 = 2 And Zeit_aufg2 = 0  Then aufgabe2 = 1
If mal_aug2 = 2 And Zeit_aufg2 = 0  Then aufgabe2_auf = 0
If mal_aug2 = 2 And Zeit_aufg2 = 0  Then auf_set2 = 0
If mal_aug2 = 2 And Zeit_aufg2 = 0  Then aufgabe2_zeit = 0
If mal_aug2 = 2 And Zeit_aufg2 = 0  Then Zeit_aufg2 = 60

If mal_aug2 = 1 And Zeit_aufg2 = 0  Then aufgabe2 = 1
If mal_aug2 = 1 And Zeit_aufg2 = 0  Then aufgabe2_auf = 0
If mal_aug2 = 1 And Zeit_aufg2 = 0  Then auf_set2 = 0
If mal_aug2 = 1 And Zeit_aufg2 = 0  Then aufgabe2_zeit = 0
If mal_aug2 = 1 And Zeit_aufg2 = 0  Then Zeit_aufg2 = 60

If mal_aug2 = 0 And Zeit_aufg2 = 0  Then aufgabe2 = 5


If mal_aug2 = 0 And Zeit_aufg2 <= 0  Zeit_aufg2 = 0



EndIf



End Function




Function einstellen()
 mitarbeiter = mitarbeiter + 1
gehaltnehmen = 3000
gehalt = mitarbeiter*gehaltnehmen

mitarbeiter_func = 1
mitarbeiter_set = 1

End Function



Function save()
save = WriteFile("save/1dat.sav")
;;MITARBEITER
WriteInt save,mitarbeiter
WriteInt save,gehalt
;;MAUS
WriteInt save,mx
WriteInt save,my
;;;AUFGABE1SAVE
WriteInt save,aufgabe1
WriteInt save,aufgabe1_auf
WriteInt save,auf_set
WriteInt save,aufgabe1_zeit
WriteInt save,mal_aug1
WriteInt save,Timer_aufg1
WriteInt save,Zeit_aufg1
;;;;AUFGABE2SAVE
WriteInt save,aufgabe2
WriteInt save,aufgabe2_auf
WriteInt save,auf_set2
WriteInt save,aufgabe2_zeit
WriteInt save,mal_aug2
WriteInt save,Timer_aufg2
WriteInt save,Zeit_aufg2
;;;ITEMS
WriteInt save,lkw
WriteInt save,geld
;;;;BANK
WriteInt save,immonat
WriteInt save,zuleihen
WriteInt save,zins
WriteInt save,zins_satz
WriteInt save,keinleih
WriteInt save,gesammt_z
;;;NAMEN
WriteString save,firmen_name
CloseFile save

End Function


Function bank()
zuleihen = Input("Bitte geben Sie ihren betra ein: ")

If zuleihen <= 12 Then zuleihen = 12
immonat =  zuleihen / 12
zins_satz = Rnd(3,5)
zins = immonat = immonat / 100  * zins_satz
immonat = immonat + zuleihen + zins
gesammt_z = immonat
immonat = immonat / 12
geld = geld + zuleihen
keinleih = 1
End Function


Function achtung()
DrawImage achtung , 60,80
Flip
WaitKey
End Function


Ich weiß net warum???

lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

Smily

BeitragFr, März 30, 2007 11:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Ohne mir den Code jetzt angesehen zu haben:
Schreib einfach mal zwichen verschiedenen Abschnitten beim Laden ein Print "1" bzw. Print "2", Print "3" etc...
So kannst du den Berreich eingrenzen, wo dein Code so lange braucht.
Gruß, Smily0412

Übrigens:

Zitat:
Global modul1 = LoadImage("gfx\modul.bmp")
Global modul2 = LoadImage("gfx\modul.bmp")
Global modul3 = LoadImage("gfx\modul.bmp")
Global modul4 = LoadImage("gfx\modul.bmp")
Global modul5 = LoadImage("gfx\modul.bmp")


Was soll das für einen Sinn haben? oO
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org
 

Beatenvoy

BeitragFr, März 30, 2007 11:53
Antworten mit Zitat
Benutzer-Profile anzeigen
na er brauchs halt 5 mal ^^

Code: [AUSKLAPPEN]

Global modul1 = LoadImage("gfx\modul.bmp")
Global modul2 = CopyImage(modul1)
Global modul3 = CopyImage(modul1)
Global modul4 = CopyImage(modul1)
Global modul5 = CopyImage(modul1)


hab nochmal ein wenig gestöbert im Code von dir.

Du könntest öffter mal Select Case verwenden !



wenn du es so brauchst Very Happy
  • Zuletzt bearbeitet von Beatenvoy am Fr, März 30, 2007 11:57, insgesamt einmal bearbeitet

Silver_Knee

BeitragFr, März 30, 2007 11:55
Antworten mit Zitat
Benutzer-Profile anzeigen
ich möchte anbringen dass sich ein hochladen des codes und ein download bei dieser länge im bereich des nützlichen befindet

Dottakopf

Betreff: 1 bild statt 11 = weniger ladezeit ?

BeitragFr, März 30, 2007 12:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Du könntest vielleicht auch diese ganzen einzelbilder in einem Bild speichern. So wie bei animationen. Danach einfach nur noch ein bild laden ->

gfx_set = loadanimimage("bla"x,y,0,zahl)

Vorrausgesetzt die Bilder haben inetwa die gleiche größe.... Bin mir nicht sicher aber ich glaub das müsste auch schneller zu laden zu sein, oder ?
Außerdem sparste dir da des modul1-5 zeugs.

Hoffe das des verwendbar ist.

mfg Dottakopf
Rechtschreibfehler gelten der allgemeinen Belustigung!

Markus2

BeitragFr, März 30, 2007 12:13
Antworten mit Zitat
Benutzer-Profile anzeigen
DebugLog benutzen Wink
 

BlackTermi

BeitragFr, März 30, 2007 12:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey Dottakopf, alles durchlesen, er läd 5 mal das selbe Bild! Nicht 5 verschiedene!

Jo0oker, du brauchst nicht 5 mal das selbe Bild laden, du kannst auch einfach das selbe immer wieder nehmen!
(ich hab mir deinen code angeschaut)
Du kannst auch das selbe Bild, fünf mal zeichnen lassen und mit dem selben Bild alle Kollisionen prüfen! (Imagesoverlap)

Und ansonsten solltest du mal etwas über deinen Code nachdenken, man kann vieles darin um einiges besser machen, Beispiel:

Dein Code:

Code: [AUSKLAPPEN]
If mal_aug2 = 3 And Zeit_aufg2 = 0 Then aufgabe2 = 1
If mal_aug2 = 3 And Zeit_aufg2 = 0 Then aufgabe2_auf = 0
If mal_aug2 = 3 And Zeit_aufg2 = 0  Then auf_set2 = 0
If mal_aug2 = 3 And Zeit_aufg2 = 0  Then aufgabe2_zeit = 0
If mal_aug2 = 3 And Zeit_aufg2 = 0  Then Zeit_aufg2 = 60

If mal_aug2 = 2 And Zeit_aufg2 = 0  Then aufgabe2 = 1
If mal_aug2 = 2 And Zeit_aufg2 = 0  Then aufgabe2_auf = 0
If mal_aug2 = 2 And Zeit_aufg2 = 0  Then auf_set2 = 0
If mal_aug2 = 2 And Zeit_aufg2 = 0  Then aufgabe2_zeit = 0
If mal_aug2 = 2 And Zeit_aufg2 = 0  Then Zeit_aufg2 = 60

If mal_aug2 = 1 And Zeit_aufg2 = 0  Then aufgabe2 = 1
If mal_aug2 = 1 And Zeit_aufg2 = 0  Then aufgabe2_auf = 0
If mal_aug2 = 1 And Zeit_aufg2 = 0  Then auf_set2 = 0
If mal_aug2 = 1 And Zeit_aufg2 = 0  Then aufgabe2_zeit = 0
If mal_aug2 = 1 And Zeit_aufg2 = 0  Then Zeit_aufg2 = 60


Anders (ist nur eine Lösung von vielen:)
(hab Zeit_aufg2 und mal_aufg2 geteilt wegen der Übersichtlichkeit)

Code: [AUSKLAPPEN]
If mal_aug2 = 3 or mal_aug2 = 2 or mal_aug2 = 1
  If Zeit_aufg2 = 0
    aufgabe2 = 1
    aufgabe2_auf = 0
    auf_set2 = 0
    aufgabe2_zeit = 0
    Zeit_aufg2 = 60
  Endif
Endif
 

gigi

Betreff: das problem hab ich auch

BeitragFr, März 30, 2007 13:48
Antworten mit Zitat
Benutzer-Profile anzeigen
es liegt daran das er erst den ganzen code prüft und dann erst wirklich anfängt.
wie kriegt man das eigentlich weg?
war ja bei der demo nicht so...
Anfänger Tut von mir:
http://www.blitzforum.de/forum...hp?t=26185

Jo0oker

BeitragFr, März 30, 2007 15:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
habe das Problem gefunden, es war eine Bild datei Shocked .
Ich kann es mir nicht erklären warum eine Bilddatei mein Spiel soooooooooooooooo langsam macht.
(Das bild war ca 800 mal 600 pix und hatte nur 36kb Question )
naja ich habe jetzt das bild als .jpg gespeicher und jetzt geht es.

lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

Smily

BeitragSa, März 31, 2007 14:42
Antworten mit Zitat
Benutzer-Profile anzeigen
welches format hatte das Bild vorher?
Ich nehm dir nicht ab, dass eine 800*600 bmp-Datei 36kb groß ist

Edit: Wenn du übrigens meinen Tip im ganz oben in der Ersten antwort befolgt hättest, hättest du den Fehler auch eher finden können ^^
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org
  • Zuletzt bearbeitet von Smily am Sa, März 31, 2007 14:53, insgesamt einmal bearbeitet

FreetimeCoder

BeitragSa, März 31, 2007 14:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du 5 mal das gleiche Bild hast, brauchst du es nicht 5 mal zu laden, sondern kannst es ja auch mehrmals zeichnen. Auch ImagesCollide und Rectsoverlab funktionieren damit ganz gut. Wink
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte:
Dexterity Ball (100%)
Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz
(ehemals Uboot)
PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA

Jo0oker

BeitragSa, März 31, 2007 15:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe auch kein Plan wie das sein kann?36kb?
Ach und das war eine .bmp datei????
Wenn du willst kanste dir das Bild mal anschauen. (Wenn ich es in einemSpiel lade versagt mein pc.)


lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

Smily

BeitragSa, März 31, 2007 15:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann ist es wohl irgendeine x-beliebige datei, bei der Irgendwer auf die Schlaue idee gekommen ist sie einfach nach .bmp umzubenennen ^^
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org
 

Dreamora

BeitragSa, März 31, 2007 16:56
Antworten mit Zitat
Benutzer-Profile anzeigen
man nimmt übrigens auch keine so grossen Bilder und versucht dann dagegen auch noch kollisionstests durchzuführen.

Schau dir Tile Grafik Systeme an und nutze etwas in der Art, dann wird das ganze massiv viel schneller.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Jo0oker

BeitragSa, März 31, 2007 18:51
Antworten mit Zitat
Benutzer-Profile anzeigen
@Dreamorea ich habe das bid garnicht auf kollision geprüfr.
Ach und das Bild habe ich in Paint gemacht und als .bmp abgespeichert


lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

Justus

BeitragSa, März 31, 2007 19:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Eine Bitmap der Größe 800x600px ist 1,37 MB groß. Und wenn man es dann noch x-mal hintereinander lädt, ist es kein Wunder, dass das entsprechend dauert.

Jo0oker

BeitragSa, März 31, 2007 19:30
Antworten mit Zitat
Benutzer-Profile anzeigen
@Justus Ich habe das Bild nur einmal geladen.
Es war das bild achtung.

lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

Smily

BeitragSa, März 31, 2007 20:16
Antworten mit Zitat
Benutzer-Profile anzeigen
trotzdem reicht es, ein bild nur einmal zuladen ^^
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group