Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 5315 → Rev 5316

/programs/games/heliothryx/game/rs/rsplatform_kos.c
74,7 → 74,7
void wnd_draw()
{
char tmp[] = "Fps:000 | Heliothryx Beta by Roman Shuvalov";
char tmp[] = "Fps:000 | Heliothryx ";
kol_paint_start();
/programs/games/heliothryx/game/rsgame.c
501,11 → 501,16
// rs_gen_func_radial(0, 0.5, 0.5, 0.3 + 0.5*i/EXPLOSION_FRAMES_COUNT, 0.975, 4.0);
// rs_gen_func_set(0, 1.0);
 
rs_gen_func_perlin(2, 10 + i, 7, 0.5, 100 + i*1000);
rs_gen_func_normalize(2, 0.0, 1.0);
 
rs_gen_func_set(1, 0.0);
rs_gen_func_radial(1, 0.5, 0.5, 0.1 + 0.4*i/EXPLOSIONS_COUNT, 1.0 - 1.0*i/EXPLOSIONS_COUNT, 2.5 + i%5);
 
rs_gen_func_add(0, 0, 2, 1.0, -0.8);
 
rs_gen_tex_out_rgba_set( 0.0, 0.0, 0.0, 0.0);
rs_gen_tex_out_rgba(0, 0, 0, 1, 1.0, 1.0, 1.0, 1.0);
rs_gen_tex_out_rgba(0, 0, 0, 1, 0.5*i/EXPLOSIONS_COUNT, 1.0 - 0.7*i/EXPLOSIONS_COUNT, 1.0, 1.0);
 
memcpy(game.tex_explosions[i].data, rs_gen_reg.tex_out, EXPLOSION_RADIUS*2*EXPLOSION_RADIUS*2*4 );
};
513,6 → 518,32
 
rs_gen_init(3, HUGE_EXPLOSION_RADIUS*2);
for (i = 0; i < HUGE_EXPLOSIONS_COUNT; i++) {
texture_init(&(game.tex_huge_explosions[i]), HUGE_EXPLOSION_RADIUS*2, HUGE_EXPLOSION_RADIUS*2);
 
rs_gen_func_set(0, 1.0);
// rs_gen_func_radial(0, 0.5, 0.5, 0.3 + 0.5*i/EXPLOSION_FRAMES_COUNT, 0.975, 4.0);
// rs_gen_func_set(0, 1.0);
 
rs_gen_func_perlin(2, 10 + i, 7, 0.5, 500 + i*2000);
rs_gen_func_normalize(2, 0.0, 1.0);
 
rs_gen_func_set(1, 0.0);
rs_gen_func_radial(1, 0.5, 0.5, 0.1 + 0.4*i/HUGE_EXPLOSIONS_COUNT, 1.0 - 1.0*i/HUGE_EXPLOSIONS_COUNT, 2.5 + i%5);
rs_gen_func_add(0, 0, 2, 1.0, -0.8);
 
rs_gen_tex_out_rgba_set( 0.0, 0.0, 0.0, 0.0);
rs_gen_tex_out_rgba(0, 0, 0, 1, 0.88*i/HUGE_EXPLOSIONS_COUNT, 0.8 - 0.8*i/HUGE_EXPLOSIONS_COUNT, 1.0, 1.0);
 
memcpy(game.tex_huge_explosions[i].data, rs_gen_reg.tex_out, HUGE_EXPLOSION_RADIUS*2*HUGE_EXPLOSION_RADIUS*2*4 );
};
rs_gen_term();
 
#ifndef RS_KOS
rs_audio_init(RS_AUDIO_FMT_MONO16, RS_AUDIO_FREQ_16000, 2);
#endif
595,6 → 626,37
};
 
soundlen = 95000;
soundbuf_init(&game.sound_huge_explosion, soundlen);
 
rs_sgen_init(3, soundlen);
 
rs_sgen_func_noise(2, 1000);
//rs_sgen_func_phaser(0, 2, 0.9, 15.2 + 1.0*i/SOUND_EXPLOSIONS_COUNT, 6.0, 3.0, 2000.0, 1.73);
rs_sgen_func_phaser(0, 2, 0.9, 16.2 + 0.5, 6.0, 3.0, 100.0, 0.53);
rs_sgen_func_normalize(0, 1.0);
 
rs_sgen_func_lowpass(2, 0, 0.8, 0.0, 10.0);
rs_sgen_func_normalize(2, 0.5);
 
rs_sgen_wave_out(2);
 
memcpy(game.sound_huge_explosion.data, (unsigned char*) rs_sgen_reg.wave_out, soundlen*2);
soundbuf_update(&game.sound_huge_explosion);
 
rs_sgen_term();
 
soundlen = 17888;
 
soundbuf_init(&game.sound_hit, soundlen);
713,6 → 775,7
texture_free(&game.tex_rocks[i]);
};
soundbuf_free(&game.sound_huge_explosion);
soundbuf_free(&game.sound_hit);
soundbuf_free(&game.sound_music);
763,7 → 826,7
case RS_KEY_SPACE:
soundbuf_play( &game.sound_turret_shoot, 0 );
soundbuf_play( &game.sound_huge_explosion, 0 );
break;
#ifdef RS_LINUX
/programs/games/heliothryx/game/rsgame.h
110,6 → 110,7
#define OBJ_MINIROCK 4
#define OBJ_TURRET 5
#define OBJ_RED_BULLET 6
#define OBJ_HUGE_EXPLOSION 7
 
typedef struct game_obj_t {
int obj_type;
148,6 → 149,10
#define EXPLOSIONS_COUNT 8
#define EXPLOSION_RADIUS 16
 
#define HUGE_EXPLOSIONS_COUNT 24
#define HUGE_EXPLOSION_RADIUS 32
 
 
#define STATUS_MENU 0
#define STATUS_PLAYING 1
#define STATUS_PAUSED 2
182,6 → 187,7
rs_texture_t tex_minirocks[MINIROCKS_COUNT];
rs_texture_t tex_explosions[EXPLOSIONS_COUNT];
rs_texture_t tex_huge_explosions[HUGE_EXPLOSIONS_COUNT];
rs_texture_t tex_font[64*FONTS_COUNT];
197,6 → 203,7
rs_soundbuf_t sound_explosions[SOUND_EXPLOSIONS_COUNT];
rs_soundbuf_t sound_hit;
rs_soundbuf_t sound_huge_explosion;
rs_soundbuf_t sound_music;
// rs_soundbuf_t sound_music2;
/programs/games/heliothryx/game/rsgamedraw.c
111,15 → 111,11
}
else if (obj->obj_type == OBJ_EXPLOSION) {
// char s[] = "00 ";
// s[0] += obj->t / 10;
// s[1] += obj->t % 10;
// game_textout( obj->x, obj->y, 0, s );
 
texture_draw( &game.framebuffer, &game.tex_explosions[ obj->t ], obj->x - obj->radius, obj->y - obj->radius, DRAW_MODE_ALPHA );
}
else if (obj->obj_type == OBJ_HUGE_EXPLOSION) {
texture_draw( &game.framebuffer, &game.tex_huge_explosions[ obj->t ], obj->x - obj->radius, obj->y - obj->radius, DRAW_MODE_ALPHA );
}
else if (obj->obj_type == OBJ_ROCK) {
texture_draw( &game.framebuffer, &game.tex_rocks[ obj->tag ], obj->x - obj->radius, obj->y - obj->radius, DRAW_MODE_ALPHA );
}
/programs/games/heliothryx/game/rsgamelogic.c
406,6 → 406,18
};
}
else if (obj->obj_type == OBJ_HUGE_EXPLOSION) {
obj->t++;
if (obj->t >= HUGE_EXPLOSIONS_COUNT) {
game_obj_remove(i);
i--;
continue;
};
}
else if ( (obj->obj_type == OBJ_ROCK) || (obj->obj_type == OBJ_MINIROCK) ) {
obj->x -= rock_speed;
443,7 → 455,7
obj->t--;
if (obj->t < 1) {
soundbuf_play(&game.sound_turret_shoot, 0);
game_obj_add( game_obj( OBJ_RED_BULLET, 0, 0, 3, obj->x - 30, obj->y, 0, 0) );
game_obj_add( game_obj( OBJ_RED_BULLET, 0, 0, 3, obj->x - 5, obj->y, 0, 0) );
int c_const = (game.stage_level < 4) ? (10 - 2*game.stage_level) : 3;
int c_var = (game.stage_level < 6) ? (20 - 3*game.stage_level) : 3;
465,8 → 477,15
for (i = 0; i < game.objs_count; i++) {
if ( IS_BIT_SET( game.objs[i].flags, OBJ_FLAG_DESTROYED ) ) {
if (game.objs[i].obj_type == OBJ_TURRET) {
soundbuf_play( &game.sound_huge_explosion, 0 );
game_obj_add( game_obj( OBJ_HUGE_EXPLOSION, 0, 0, HUGE_EXPLOSION_RADIUS, game.objs[i].x, game.objs[i].y, 0, 0.0 ) );
}
else {
soundbuf_play( &game.sound_explosions[ rs_rand() % SOUND_EXPLOSIONS_COUNT ], 0 );
game_obj_add( game_obj( OBJ_EXPLOSION, 0, 0, EXPLOSION_RADIUS, game.objs[i].x, game.objs[i].y, 0, 0.0 ) );
};
game_obj_remove(i);
i--;
/programs/games/heliothryx/game/strings_en.h
28,9 → 28,8
//#define L_TECHDEMO_LINE1 "THI5 I5 TECHDEM0` "
#define L_TECHDEMO_LINE1 "U5E ARR0W5 T0 M0VE_ <A> T0 5H00T_ <E5C> T0 PAU5E "
 
#define L_YOUR_SCORE "Y0UR 5C0RE:"
#define L_GAME_OVER "GAME 0VER"
//#define L_LEVEL_PASSED "DEM0=LEVEL PA55ED"
#define L_YOUR_SCORE "Y0UR 5C0RE:"
 
#define L_PAUSE "PAU5E"
#define L_RESUME "RE5UME PLAYING"
/programs/games/heliothryx/game/strings_ru.h
28,7 → 28,6
//#define L_TECHDEMO_LINE1 "eT0 TEXH0dEMKA` "
#define L_TECHDEMO_LINE1 "CTPElKi = dBijEHiE_ <A> = B\\CTPEl_ <E5C> = nAY3A "
 
//#define L_LEVEL_PASSED "dEM0=YP0BEH] nP0^dEH"
#define L_YOUR_SCORE "04K0B HAbPAH0:"
#define L_GAME_OVER "igPA 0K0H4EHA"