Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

11

20.06.2006, 18:54

Zitat von »"DarkRaider"«

Zitat von »"PatrickB"«

Ja, aber ich bin gerade bei dem Spiel mit der 2D Programmierung :oops:

Gut, ich werde mal nachsehn und mich dann wieder melden


Lesen!!!


Was heißt hier lesen?? :roll:

Anonymous

unregistriert

12

20.06.2006, 18:57

Zitat von »"PatrickB"«

Zitat von »"DarkRaider"«

Zitat von »"PatrickB"«

Ja, aber ich bin gerade bei dem Spiel mit der 2D Programmierung :oops:

Gut, ich werde mal nachsehn und mich dann wieder melden


Lesen!!!


Was heißt hier lesen?? :roll:


Ja weil die dir Konsolenbefehle gegeben hast, mit denen wirst du in der
2D Programmierung nicht viel anfangen können...das war nicht an dich
gerichtet :)

13

20.06.2006, 18:57

Ich hab mir jetzt Visual C++ 2005 Express Edition (Deutsch!!!) runtergeladen und auch das SDK (Englisch) so installiert wie in dem Tutorial das es hier gibt. Hab auch die include und lib's eingefügt unter optionen. So wie es halt im Tutorial stand, aber bei mir will Kapitel 12 einfach nicht klappen.

Hier mal ein Auszug aus dem Debug:

Quellcode

1
2
".\Debug\SDL_Game.exe.embed.manifest.res"
]Erstellen der Befehlszeile "link.exe @"d:\C++\Source\Kapitel 12\Debug\RSP00000325602996.rsp" /NOLOGO /ERRORREPORT:PROMPT"


Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Kompilieren...
Asteroid.cpp
Framework.cpp
Game.cpp
main.cpp
Player.cpp
Shot.cpp
Sprite.cpp
Timer.cpp
Code wird generiert...
Manifest in Ressourcen wird kompiliert...
Verknüpfen...
Game.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW" in Funktion ""public: class std::list >::_Const_iterator<1> & __thiscall std::list >::_Const_iterator<1>::operator++(void)" (??E?$_Const_iterator@$00@?$list@VCAsteroid@@V?$allocator@VCAsteroid@@@std@@@std@@QAEAAV012@XZ)".
Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
.\Debug/SDL_Game.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.


Mh... was ist den jeztzt noch falsch? Was heißt nicht aufgelöstes externes Symbol? Muss ich noch was umstellen?

GR-PA

Treue Seele

Beiträge: 326

Wohnort: Daheim

Beruf: Faulenzer

  • Private Nachricht senden

14

24.06.2006, 21:07

Der Quellcode steht doch im Buch! Sperr doch deine Augen auf und lies nach. (in der Funktion:class std::list) :)
Oder bist du gerade dabei das Spiel aus Kapitel 12 zu verbessern? :?:

Firefly

Alter Hase

Beiträge: 484

Wohnort: Irgendwoundnirgendwo

  • Private Nachricht senden

15

25.06.2006, 15:39

Die Ausgabe von den Zahlen kannste auch mit Bitmaps machen: hier ein bisschen Pseudocode dazu:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
BITMAP *punkte=loadbitmap(...)
BITMAP *nums[10];
for(int i=0;i<10;i++)nums[i]=loadbitmap(...);
void drawpointbar(int zahl)
{
int e,z,h,t,zt,ht;
ht=num/100000;
zt=(num-ht*100000)/10000;
t=(num-ht*100000-zt*10000)/1000;
h=(num-ht*100000-zt*10000-t*1000)/100;
z=(num-ht*100000-zt*10000-t*1000-h*100)/10;
e=(num-ht*100000-zt*10000-t*1000-h*100-z*10)/1;
drawbitmap(nums[ht],x,y)
drawbitmap(nums[zt],x+w,y)
drawbitmap(nums[t],x+2*w,y)
drawbitmap(nums[h],x+3*w,y)
drawbitmap(nums[z],x+4*w,y)
drawbitmap(nums[e],x+5*w,y)
}


Man muss dabei halt nur gucken, dass die zahl nicht größer als 999 999 ist. Das Prinzip ist aber erweiterbar...

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

16

25.06.2006, 16:37

... oder weniger umständlich:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
int e,z,h,t,zt,ht;
ht = zahl / 100000; zahl %= 100000;
zt = zahl / 10000; zahl %= 10000;
t = zahl / 1000; zahl %= 1000;
h = zahl / 100; zahl %= 100;
z = zahl / 10; zahl %= 10;
e = zahl;
// ...

Werbeanzeige