include geht nicht.

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

Tauben-Ripper

Betreff: include geht nicht.

BeitragDi, Feb 07, 2006 16:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!
Ich habe in meinem programm mehrere includes eingebaut, manche gehen, und manche überspringt das programm einfach. Was habe ich falsch gemacht?

D2006

Administrator

BeitragDi, Feb 07, 2006 16:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

ich war neulich in der Kaufhalle, da gab es viele Flaschen mit Getränken drin. Manche schmecken mir, aber manche finde ich einfach nur widerlich. Was mache ich falsch ?



Rolling Eyes

Mehr Infos bitte. Zum Beispiel Quellcode...

MfG
D2006
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard
Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium
Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2

Tauben-Ripper

BeitragDi, Feb 07, 2006 16:29
Antworten mit Zitat
Benutzer-Profile anzeigen
und hier soll es eingefungt werden:
Code: [AUSKLAPPEN]

.reddragongewonnen
Cls
StopChannel(hintergrundmusik)
PlayMusic("music/5.mp3")

SetFont font2
Text 350,300,"Gewonnen"
SetFont font5
Color 225,225,225
Text 280,350,"Du bekommst 20 Gold und 15 Exp"
gold=gold+20
charexp=charexp+15
If jashaquest1=2 Then
If questdragonkillen < 5 Then
questdragonkillen=questdragonkillen+1
questshaupt$="Töte 5 RedDragons. ("+questdragonkillen+"/5)"
EndIf
EndIf
If questdragonkillen = 5 Then
questshaupt$="Töte 5 RedDragons. ("+questdragonkillen+"/5) (fertig)"
jashaquest1=3
EndIf

Flip
Delay 4400*3
Include"lvlup.bb"



include code:

Code: [AUSKLAPPEN]
Cls

If charexp >= 100 Then Goto levelupto3
If charexp >= 30 Then Goto levelupto2





Goto levelupende




.levelupto2

lebenmax=125
exnextlevel=100
If charlevel<2 Then
SetFont font3
Cls
Color 225,225,225
Text 400,400,"Du bist jetzt Level 2"
Flip
Delay 1000
EndIf

charlevel=2

Goto levelupende


.levelupto3

lebenmax=150;immer +25
exnextlevel=150
If charlevel<3 Then
SetFont font3
Cls
Color 225,225,225
Text 400,400,"Du bist jetzt Level 3"
Flip
Delay 1000
EndIf

charlevel=3

Goto levelupende




.levelupende

Xaron

BeitragDi, Feb 07, 2006 16:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Tja, ich würde mal sagen, er springt gleich zum Label "levelupende".
So steht's ja auch da. Wink

Gruß - Xaron
Cerberus X - Monkey X Reloaded!
 

Damian

BeitragDi, Feb 07, 2006 16:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Sorry, weiß aber nicht wo das problem ist -.-

Tauben-Ripper

BeitragDi, Feb 07, 2006 17:51
Antworten mit Zitat
Benutzer-Profile anzeigen
und warum spingt er gleich dahin?

tyty

BeitragDi, Feb 07, 2006 17:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Weil da ein "Goto" steht.
User posted image

Kaikille suomea puhuville ihmisille: tyty = tyty the technical youngster!!!

Tauben-Ripper

BeitragDi, Feb 07, 2006 18:02
Antworten mit Zitat
Benutzer-Profile anzeigen
ja aber wenn charexp=30 ist sollte es zu levelupto2 springen, aber das tut es nicht.

tyty

BeitragDi, Feb 07, 2006 18:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Das müsste global sein, glaube ich
User posted image

Kaikille suomea puhuville ihmisille: tyty = tyty the technical youngster!!!

Tauben-Ripper

BeitragDi, Feb 07, 2006 18:06
Antworten mit Zitat
Benutzer-Profile anzeigen
gestern ging es noch, und heute aufeinmal, geht es nicht mehr.


also mit global gehts auch irgendwie ned.
 

TACITUS

BeitragDi, Feb 07, 2006 20:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Wozu benutzt du überhaupt Goto? Siehst du, das sind die Folgen dieses
schwachsinnigen Befehls... Confused
AMD Athlon 64 X2 4200+ Dual Core Prozessor _ 1024 MB Dual Channel DDR RAM _ GeForce 7800 GT PCI Express 256 MB GDDR3 RAM _ Festplatte 410 GB _ DirectX 9.0c
User posted image
 

HW

BeitragDi, Feb 07, 2006 20:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, ich muss Tacitus vollkommen zustimmen. Du solltest Goto so gut es geht vermeiden.
So wie ich deinen Codeausschnitt verstehe, willst du den Level des Spielers steigern, wenn seine Fähigkeitsstufe einen bestimmten Wert erreicht hat. In so einem Fall solltest du am Besten eine simple ql:if Prüfung einbauen.

Tauben-Ripper

BeitragDi, Feb 07, 2006 21:26
Antworten mit Zitat
Benutzer-Profile anzeigen
ok danke, des mit dem if ist echt besser, aber jetzt nimmt er es wieder nicht an. Der überspringt die ganze datei.

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDi, Feb 07, 2006 22:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Vielleicht ist das Include an der falschen Stelle... Überhaupt würde ich nicht nur so ein paar Zeilen Code in eine Include packen. Macht nur noch mehr Unübersichtlichkeit.
 

Schnuff

BeitragDi, Feb 07, 2006 22:59
Antworten mit Zitat
Benutzer-Profile anzeigen
also, mein code sieh immer so(oder so ähnlich) aus!
Code: [AUSKLAPPEN]

Graphics 640,480,16,1
SetBuffer BackBuffer()

Include"U\1.bb";Variablen werden Definiert, Bilder Laden

Repeat
   
   Include"U\3.bb";berechnungen
   Include"U\4.bb";Bilder Malen
   
   Flip
   Cls
Until KeyHit(1)
End

und Tauben-Ripper, köntest du uns vileicht den jetzigen code senden?
Programmers dont die. They gosub without return...

Tauben-Ripper

BeitragDi, Feb 07, 2006 23:11
Antworten mit Zitat
Benutzer-Profile anzeigen
habe des goto jetzt weg und mit if gemacht, also entweder ich hab einen fehler drin, oder ich weiß ned wo der fehler liegen kann.
Code: [AUSKLAPPEN]
Cls

If charexp >= 100 Then
lebenmax=150;immer +25
exnextlevel=150
If charlevel<3 Then
SetFont font3
Cls
Color 225,225,225
Text 400,400,"Du bist jetzt Level 3"
Flip
Delay 1000
EndIf
charlevel=3

ElseIf charexp >= 30 Then
lebenmax=125
exnextlevel=100
If charlevel<2 Then
SetFont font3
Cls
Color 225,225,225
Text 400,400,"Du bist jetzt Level 2"
Flip
Delay 1000
EndIf
charlevel=2
EndIf

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDi, Feb 07, 2006 23:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Also Code einrücken währe schonmal nicht schlecht. Das verursacht Augenkrebs bei mir. Warum steht charlevel=3 nach der ersten If-Schleife nach dem EndIf und charlevel=2 nach der zweiten If-Schleife vor dem EndIf? Soll das so sein?

Ausserdem würde ich den Level ausrechnen und nicht mit ewigen If-Abfragen raufsetzen... Also in der art wie folgt:Code: [AUSKLAPPEN]
If level>(lebenmax-100)/25 then level=level+1: If level>10 Then level=10
Text 400,400,"Du bist jetzt Level "+level
Falls ist die Kriterien richtig verstanden habe. Ansonsten anpassen.

Tauben-Ripper

BeitragDi, Feb 07, 2006 23:53
Antworten mit Zitat
Benutzer-Profile anzeigen
also der code funktioniert, wenn ich ihn einfach ganz normal ins hauptprogramm einbaue, doch wenn ich in als include einsetzte, nimmt er ihn nicht an.
 

Blackdragon1989

BeitragMi, Feb 08, 2006 0:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Mal ne ganz blöde Frage,bist du dir 100% sicher das du die 2.Datei auch als lvlup gespeichert hast ?
User posted image

Tauben-Ripper

BeitragMi, Feb 08, 2006 0:40
Antworten mit Zitat
Benutzer-Profile anzeigen
ja, gestern ist alles noch gegangen, und heute will es nicht mehr, das ist ja das seltsame.

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group