diff --git a/prefabs/player.gcprefab b/prefabs/player.gcprefab index 994b4e7..bde01c0 100644 --- a/prefabs/player.gcprefab +++ b/prefabs/player.gcprefab @@ -39,6 +39,6 @@ - + diff --git a/src/components/particule_component.c b/src/components/particule_component.c index 6631796..fa6b2a1 100644 --- a/src/components/particule_component.c +++ b/src/components/particule_component.c @@ -50,7 +50,7 @@ component; } cmp->type = xml_getintprop(n, "type"); cmp->nb_max_particules = xml_getintprop(n, "nb_particules_max"); - cmp->texture = NULL; + cmp->texture = scene->get_data(scene, "sprite", xml_getproperty(n, "texture")); cmp->lifetime = xml_getintprop(n, "lifetime"); cmp->particules = malloc(sizeof(struct particule_component) * \ (cmp->nb_max_particules + 1)); diff --git a/src/systems/particule_system.c b/src/systems/particule_system.c index b6919a6..99fe187 100644 --- a/src/systems/particule_system.c +++ b/src/systems/particule_system.c @@ -23,7 +23,7 @@ void *texture, gc_vector2 pos) particule->sprite->texture = texture; particule->sprite->pos = pos; particule->sprite->rect = (gc_int_rect){16, 16,0,0}; - particule->sprite->scale = (gc_vector2){1, 1}; + particule->sprite->scale = (gc_vector2){0.2, 0.2}; } void particule_draw(gc_engine *engine, void *system, \ @@ -54,10 +54,11 @@ float dtime) if (!ml || !tc || !cmp) return; + //ml->tile->texture for (int i = 0; i < cmp->nb_max_particules; i++) { cmp->particules[i].lifetime -= (cmp->particules[i].lifetime) ? 1 : 0; if (!cmp->particules[i].lifetime) { - create_particule(&cmp->particules[i], cmp->lifetime, ml->tile->texture, tc->position); + create_particule(&cmp->particules[i], cmp->lifetime, cmp->texture, tc->position); } } particule_draw(engine, system, entity, dtime);