Trabajando en la carga de recursos por nombre

This commit is contained in:
2022-10-31 18:37:48 +01:00
parent deb820015f
commit a354104c8c
10 changed files with 227 additions and 179 deletions

View File

@@ -0,0 +1,9 @@
frameWidth=16
frameHeight=16
[animation]
name=default
speed=6
loop=0
frames=0,1,2,3,4,5
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 415 B

9
data/enemies/bell.ani Normal file
View File

@@ -0,0 +1,9 @@
frameWidth=16
frameHeight=16
[animation]
name=default
speed=7
loop=0
frames=0,1,2,3,4,5,6,7,8,9,10,11
[/animation]

BIN
data/enemies/bell.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 449 B

View File

@@ -1,33 +1,51 @@
name=no 25
bgColor=black
border=red
bgColor=blue
border=yellow
tileMapFile=25.tmx
tileSetFile=standard.png
roomUp=0
roomDown=0
roomLeft=06.room
roomRight=26.room
itemColor1=yellow
itemColor2=cyan
[enemy]
tileSetFile=diskette.png
animation=diskette.ani
tileSetFile=batman_bell.png
animation=batman_bell.ani
width=16
height=16
x=2
x=14
y=12
vx=0
vy=0
x1=14
y1=12
x2=14
y2=12
color=bright_cyan
[/enemy]
[enemy]
tileSetFile=bell.png
animation=bell.ani
width=16
height=16
x=14
y=2
vx=0
vy=0
x1=2
x1=14
y1=2
x2=2
x2=14
y2=2
color=magenta
color=bright_yellow
[/enemy]
[item]
tileSetFile=items.png
tile=1
x=1
y=1
tile=48
x=17
y=8
counter=1
[/item]

View File

@@ -3,22 +3,22 @@
<tileset firstgid="1" source="standard.tsx"/>
<layer id="1" name="Capa de patrones 1" width="32" height="16">
<data encoding="csv">
25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25
67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,
91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,
93,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,403,403,403,403,403,403,403,403,403,403,403,403,403,32,32,
117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,
141,0,0,0,0,0,0,0,0,0,0,0,426,427,426,427,426,427,0,0,0,0,0,0,0,0,0,0,0,0,32,32,
32,0,0,0,0,0,0,0,0,0,0,0,93,0,0,0,0,93,0,0,0,0,0,0,0,0,0,0,0,0,32,32,
0,0,0,0,0,0,0,0,0,0,0,0,117,0,0,0,0,117,0,0,0,0,0,0,0,0,0,0,0,0,32,32,
0,0,0,0,0,0,0,0,0,0,0,0,141,0,0,0,0,141,0,0,0,0,0,0,0,0,0,0,0,0,32,32,
426,427,426,427,426,427,426,427,426,427,426,427,426,427,426,427,426,427,426,427,426,427,426,427,426,427,426,427,426,427,426,427
</data>
</layer>
</map>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

After

Width:  |  Height:  |  Size: 7.2 KiB

View File

@@ -26,9 +26,13 @@ void Resource::loadAnimations(std::vector<std::string> list)
{
for (auto l : list)
{
// Extrae el nombre del fichero sin la extension para crear el nombre del fichero de la textura
const size_t lastIndex = l.find_last_of(".");
const std:: string pngFile = l.substr(0, lastIndex)+".png";
res_animation_t as;
as.name = l + ".ani";
as.animation = new animatedSprite_t(loadAnimationFromFile(getTexture(l + ".png"), asset->get(l + ".ani")));
as.name = l;
as.animation = new animatedSprite_t(loadAnimationFromFile(getTexture(pngFile), asset->get(l)));
animations.push_back(as);
}
}

View File

@@ -255,46 +255,48 @@ void Director::loadResources(section_t section)
textureList.push_back("standard_zxarne.png");
// Enemigos
textureList.push_back("paco.png");
textureList.push_back("chip.png");
textureList.push_back("wave.png");
textureList.push_back("wave_v.png");
textureList.push_back("sigmasua.png");
textureList.push_back("diskette.png");
textureList.push_back("bird.png");
textureList.push_back("bin.png");
textureList.push_back("qvoid.png");
textureList.push_back("batman.png");
textureList.push_back("tuno.png");
textureList.push_back("matatunos.png");
textureList.push_back("abad.png");
textureList.push_back("jailbattle_human.png");
textureList.push_back("amstrad_character_set.png");
textureList.push_back("arounder_fly.png");
textureList.push_back("arounder_stop.png");
textureList.push_back("arounder_walk.png");
textureList.push_back("arounders_door.png");
textureList.push_back("arounders_machine.png");
textureList.push_back("bat.png");
textureList.push_back("batman_bell.png");
textureList.push_back("batman.png");
textureList.push_back("bell.png");
textureList.push_back("bin.png");
textureList.push_back("bird.png");
textureList.push_back("breakout.png");
textureList.push_back("bry.png");
textureList.push_back("chip.png");
textureList.push_back("code.png");
textureList.push_back("demon.png");
textureList.push_back("dimallas_v.png");
textureList.push_back("dimallas.png");
textureList.push_back("diskette.png");
textureList.push_back("heavy.png");
textureList.push_back("jailbattle_alien.png");
textureList.push_back("jailbattle_human.png");
textureList.push_back("jailer.png");
textureList.push_back("jailer2.png");
textureList.push_back("jailer3.png");
textureList.push_back("printer.png");
textureList.push_back("code.png");
textureList.push_back("demon.png");
textureList.push_back("dimallas.png");
textureList.push_back("dimallas_v.png");
textureList.push_back("heavy.png");
textureList.push_back("spider.png");
textureList.push_back("macaronni_ted.png");
textureList.push_back("mummy.png");
textureList.push_back("sam.png");
textureList.push_back("amstrad_character_set.png");
textureList.push_back("breakout.png");
textureList.push_back("lamp.png");
textureList.push_back("bry.png");
textureList.push_back("tv.png");
textureList.push_back("macaronni_ted.png");
textureList.push_back("matatunos.png");
textureList.push_back("mummy.png");
textureList.push_back("paco.png");
textureList.push_back("printer.png");
textureList.push_back("qvoid.png");
textureList.push_back("sam.png");
textureList.push_back("sigmasua.png");
textureList.push_back("spider.png");
textureList.push_back("tuno.png");
textureList.push_back("tv_panel.png");
textureList.push_back("arounders_door.png");
textureList.push_back("arounders_machine.png");
textureList.push_back("arounder_walk.png");
textureList.push_back("arounder_stop.png");
textureList.push_back("arounder_fly.png");
textureList.push_back("bat.png");
textureList.push_back("tv.png");
textureList.push_back("wave_v.png");
textureList.push_back("wave.png");
// Items
textureList.push_back("items.png");
@@ -312,46 +314,48 @@ void Director::loadResources(section_t section)
animationList.push_back("player");
// Enemigos
animationList.push_back("paco");
animationList.push_back("chip");
animationList.push_back("wave");
animationList.push_back("wave_v");
animationList.push_back("sigmasua");
animationList.push_back("diskette");
animationList.push_back("bird");
animationList.push_back("bin");
animationList.push_back("qvoid");
animationList.push_back("batman");
animationList.push_back("tuno");
animationList.push_back("matatunos");
animationList.push_back("abad");
animationList.push_back("jailbattle_human");
animationList.push_back("jailbattle_alien");
animationList.push_back("jailer");
animationList.push_back("jailer2");
animationList.push_back("jailer3");
animationList.push_back("printer");
animationList.push_back("code");
animationList.push_back("demon");
animationList.push_back("dimallas");
animationList.push_back("dimallas_v");
animationList.push_back("heavy");
animationList.push_back("spider");
animationList.push_back("macaronni_ted");
animationList.push_back("mummy");
animationList.push_back("sam");
animationList.push_back("amstrad_character_set");
animationList.push_back("breakout");
animationList.push_back("lamp");
animationList.push_back("bry");
animationList.push_back("tv");
animationList.push_back("tv_panel");
animationList.push_back("arounders_door");
animationList.push_back("arounders_machine");
animationList.push_back("arounder_walk");
animationList.push_back("arounder_stop");
animationList.push_back("arounder_fly");
animationList.push_back("bat");
animationList.push_back("abad.ani");
animationList.push_back("amstrad_character_set.ani");
animationList.push_back("arounder_fly.ani");
animationList.push_back("arounder_stop.ani");
animationList.push_back("arounder_walk.ani");
animationList.push_back("arounders_door.ani");
animationList.push_back("arounders_machine.ani");
animationList.push_back("bat.ani");
animationList.push_back("batman_bell.ani");
animationList.push_back("batman.ani");
animationList.push_back("bell.ani");
animationList.push_back("bin.ani");
animationList.push_back("bird.ani");
animationList.push_back("breakout.ani");
animationList.push_back("bry.ani");
animationList.push_back("chip.ani");
animationList.push_back("code.ani");
animationList.push_back("demon.ani");
animationList.push_back("dimallas_v.ani");
animationList.push_back("dimallas.ani");
animationList.push_back("diskette.ani");
animationList.push_back("heavy.ani");
animationList.push_back("jailbattle_alien.ani");
animationList.push_back("jailbattle_human.ani");
animationList.push_back("jailer.ani");
animationList.push_back("jailer2.ani");
animationList.push_back("jailer3.ani");
animationList.push_back("lamp.ani");
animationList.push_back("macaronni_ted.ani");
animationList.push_back("matatunos.ani");
animationList.push_back("mummy.ani");
animationList.push_back("paco.ani");
animationList.push_back("printer.ani");
animationList.push_back("qvoid.ani");
animationList.push_back("sam.ani");
animationList.push_back("sigmasua.ani");
animationList.push_back("spider.ani");
animationList.push_back("tuno.ani");
animationList.push_back("tv_panel.ani");
animationList.push_back("tv.ani");
animationList.push_back("wave_v.ani");
animationList.push_back("wave.ani");
resource->loadAnimations(animationList);
@@ -829,86 +833,90 @@ bool Director::setFileList()
asset->add("/data/tilesets/standard_zxarne.png", t_bitmap);
// Enemigos
asset->add("/data/enemies/paco.png", t_bitmap);
asset->add("/data/enemies/paco.ani", t_data);
asset->add("/data/enemies/chip.png", t_bitmap);
asset->add("/data/enemies/chip.ani", t_data);
asset->add("/data/enemies/wave.png", t_bitmap);
asset->add("/data/enemies/wave.ani", t_data);
asset->add("/data/enemies/wave_v.png", t_bitmap);
asset->add("/data/enemies/wave_v.ani", t_data);
asset->add("/data/enemies/sigmasua.png", t_bitmap);
asset->add("/data/enemies/sigmasua.ani", t_data);
asset->add("/data/enemies/diskette.png", t_bitmap);
asset->add("/data/enemies/diskette.ani", t_data);
asset->add("/data/enemies/bird.png", t_bitmap);
asset->add("/data/enemies/bird.ani", t_data);
asset->add("/data/enemies/bin.png", t_bitmap);
asset->add("/data/enemies/bin.ani", t_data);
asset->add("/data/enemies/qvoid.png", t_bitmap);
asset->add("/data/enemies/qvoid.ani", t_data);
asset->add("/data/enemies/batman.png", t_bitmap);
asset->add("/data/enemies/batman.ani", t_data);
asset->add("/data/enemies/tuno.png", t_bitmap);
asset->add("/data/enemies/tuno.ani", t_data);
asset->add("/data/enemies/matatunos.png", t_bitmap);
asset->add("/data/enemies/matatunos.ani", t_data);
asset->add("/data/enemies/abad.png", t_bitmap);
asset->add("/data/enemies/abad.ani", t_data);
asset->add("/data/enemies/jailbattle_human.png", t_bitmap);
asset->add("/data/enemies/jailbattle_human.ani", t_data);
asset->add("/data/enemies/jailbattle_alien.png", t_bitmap);
asset->add("/data/enemies/jailbattle_alien.ani", t_data);
asset->add("/data/enemies/jailer.png", t_bitmap);
asset->add("/data/enemies/jailer.ani", t_data);
asset->add("/data/enemies/jailer2.png", t_bitmap);
asset->add("/data/enemies/jailer2.ani", t_data);
asset->add("/data/enemies/jailer3.png", t_bitmap);
asset->add("/data/enemies/jailer3.ani", t_data);
asset->add("/data/enemies/printer.png", t_bitmap);
asset->add("/data/enemies/printer.ani", t_data);
asset->add("/data/enemies/code.png", t_bitmap);
asset->add("/data/enemies/code.ani", t_data);
asset->add("/data/enemies/demon.png", t_bitmap);
asset->add("/data/enemies/demon.ani", t_data);
asset->add("/data/enemies/dimallas.png", t_bitmap);
asset->add("/data/enemies/dimallas.ani", t_data);
asset->add("/data/enemies/dimallas_v.png", t_bitmap);
asset->add("/data/enemies/dimallas_v.ani", t_data);
asset->add("/data/enemies/heavy.png", t_bitmap);
asset->add("/data/enemies/heavy.ani", t_data);
asset->add("/data/enemies/spider.png", t_bitmap);
asset->add("/data/enemies/spider.ani", t_data);
asset->add("/data/enemies/macaronni_ted.png", t_bitmap);
asset->add("/data/enemies/macaronni_ted.ani", t_data);
asset->add("/data/enemies/mummy.png", t_bitmap);
asset->add("/data/enemies/mummy.ani", t_data);
asset->add("/data/enemies/sam.png", t_bitmap);
asset->add("/data/enemies/sam.ani", t_data);
asset->add("/data/enemies/amstrad_character_set.png", t_bitmap);
asset->add("/data/enemies/abad.png", t_bitmap);
asset->add("/data/enemies/amstrad_character_set.ani", t_data);
asset->add("/data/enemies/breakout.png", t_bitmap);
asset->add("/data/enemies/breakout.ani", t_data);
asset->add("/data/enemies/lamp.png", t_bitmap);
asset->add("/data/enemies/lamp.ani", t_data);
asset->add("/data/enemies/bry.png", t_bitmap);
asset->add("/data/enemies/bry.ani", t_data);
asset->add("/data/enemies/tv.png", t_bitmap);
asset->add("/data/enemies/tv.ani", t_data);
asset->add("/data/enemies/tv_panel.png", t_bitmap);
asset->add("/data/enemies/tv_panel.ani", t_data);
asset->add("/data/enemies/arounders_door.png", t_bitmap);
asset->add("/data/enemies/arounders_door.ani", t_data);
asset->add("/data/enemies/arounders_machine.png", t_bitmap);
asset->add("/data/enemies/arounders_machine.ani", t_data);
asset->add("/data/enemies/arounder_walk.png", t_bitmap);
asset->add("/data/enemies/arounder_walk.ani", t_data);
asset->add("/data/enemies/arounder_stop.png", t_bitmap);
asset->add("/data/enemies/arounder_stop.ani", t_data);
asset->add("/data/enemies/arounder_fly.png", t_bitmap);
asset->add("/data/enemies/amstrad_character_set.png", t_bitmap);
asset->add("/data/enemies/arounder_fly.ani", t_data);
asset->add("/data/enemies/bat.png", t_bitmap);
asset->add("/data/enemies/arounder_fly.png", t_bitmap);
asset->add("/data/enemies/arounder_stop.ani", t_data);
asset->add("/data/enemies/arounder_stop.png", t_bitmap);
asset->add("/data/enemies/arounder_walk.ani", t_data);
asset->add("/data/enemies/arounder_walk.png", t_bitmap);
asset->add("/data/enemies/arounders_door.ani", t_data);
asset->add("/data/enemies/arounders_door.png", t_bitmap);
asset->add("/data/enemies/arounders_machine.ani", t_data);
asset->add("/data/enemies/arounders_machine.png", t_bitmap);
asset->add("/data/enemies/bat.ani", t_data);
asset->add("/data/enemies/bat.png", t_bitmap);
asset->add("/data/enemies/batman_bell.ani", t_data);
asset->add("/data/enemies/batman_bell.png", t_bitmap);
asset->add("/data/enemies/batman.ani", t_data);
asset->add("/data/enemies/batman.png", t_bitmap);
asset->add("/data/enemies/bell.ani", t_data);
asset->add("/data/enemies/bell.png", t_bitmap);
asset->add("/data/enemies/bin.ani", t_data);
asset->add("/data/enemies/bin.png", t_bitmap);
asset->add("/data/enemies/bird.ani", t_data);
asset->add("/data/enemies/bird.png", t_bitmap);
asset->add("/data/enemies/breakout.ani", t_data);
asset->add("/data/enemies/breakout.png", t_bitmap);
asset->add("/data/enemies/bry.ani", t_data);
asset->add("/data/enemies/bry.png", t_bitmap);
asset->add("/data/enemies/chip.ani", t_data);
asset->add("/data/enemies/chip.png", t_bitmap);
asset->add("/data/enemies/code.ani", t_data);
asset->add("/data/enemies/code.png", t_bitmap);
asset->add("/data/enemies/demon.ani", t_data);
asset->add("/data/enemies/demon.png", t_bitmap);
asset->add("/data/enemies/dimallas_v.ani", t_data);
asset->add("/data/enemies/dimallas_v.png", t_bitmap);
asset->add("/data/enemies/dimallas.ani", t_data);
asset->add("/data/enemies/dimallas.png", t_bitmap);
asset->add("/data/enemies/diskette.ani", t_data);
asset->add("/data/enemies/diskette.png", t_bitmap);
asset->add("/data/enemies/heavy.ani", t_data);
asset->add("/data/enemies/heavy.png", t_bitmap);
asset->add("/data/enemies/jailbattle_alien.ani", t_data);
asset->add("/data/enemies/jailbattle_alien.png", t_bitmap);
asset->add("/data/enemies/jailbattle_human.ani", t_data);
asset->add("/data/enemies/jailbattle_human.png", t_bitmap);
asset->add("/data/enemies/jailer.ani", t_data);
asset->add("/data/enemies/jailer.png", t_bitmap);
asset->add("/data/enemies/jailer2.ani", t_data);
asset->add("/data/enemies/jailer2.png", t_bitmap);
asset->add("/data/enemies/jailer3.ani", t_data);
asset->add("/data/enemies/jailer3.png", t_bitmap);
asset->add("/data/enemies/lamp.ani", t_data);
asset->add("/data/enemies/lamp.png", t_bitmap);
asset->add("/data/enemies/macaronni_ted.ani", t_data);
asset->add("/data/enemies/macaronni_ted.png", t_bitmap);
asset->add("/data/enemies/matatunos.ani", t_data);
asset->add("/data/enemies/matatunos.png", t_bitmap);
asset->add("/data/enemies/mummy.ani", t_data);
asset->add("/data/enemies/mummy.png", t_bitmap);
asset->add("/data/enemies/paco.ani", t_data);
asset->add("/data/enemies/paco.png", t_bitmap);
asset->add("/data/enemies/printer.ani", t_data);
asset->add("/data/enemies/printer.png", t_bitmap);
asset->add("/data/enemies/qvoid.ani", t_data);
asset->add("/data/enemies/qvoid.png", t_bitmap);
asset->add("/data/enemies/sam.ani", t_data);
asset->add("/data/enemies/sam.png", t_bitmap);
asset->add("/data/enemies/sigmasua.ani", t_data);
asset->add("/data/enemies/sigmasua.png", t_bitmap);
asset->add("/data/enemies/spider.ani", t_data);
asset->add("/data/enemies/spider.png", t_bitmap);
asset->add("/data/enemies/tuno.ani", t_data);
asset->add("/data/enemies/tuno.png", t_bitmap);
asset->add("/data/enemies/tv_panel.ani", t_data);
asset->add("/data/enemies/tv_panel.png", t_bitmap);
asset->add("/data/enemies/tv.ani", t_data);
asset->add("/data/enemies/tv.png", t_bitmap);
asset->add("/data/enemies/wave_v.ani", t_data);
asset->add("/data/enemies/wave_v.png", t_bitmap);
asset->add("/data/enemies/wave.ani", t_data);
asset->add("/data/enemies/wave.png", t_bitmap);
// Jugador
asset->add("/data/player/player.png", t_bitmap);

View File

@@ -20,7 +20,7 @@ Game::Game(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *as
// ****
// this->debug->setEnabled(true);
currentRoom = "14.room";
currentRoom = "06.room";
const int x = 30;
const int y = 13;
spawnPoint = {x * 8, y * 8, 0, 0, 0, s_standing, SDL_FLIP_HORIZONTAL};