stage4: adjust vampiric_vapour
same but less trivial. mostly made the projectile live beyond the screen.
This commit is contained in:
parent
25cb29f3ce
commit
56e69ecbd5
1 changed files with 7 additions and 4 deletions
|
@ -40,13 +40,16 @@ TASK(kurumi_vampvape_proj, { int delay; cmplx pos; cmplx vel; }) {
|
|||
.color = RGBA(1.0, 0.5, 0.5, 0.0),
|
||||
.move = move_linear(ARGS.vel),
|
||||
.flags = PFLAG_NOSPAWNFLARE,
|
||||
.max_viewport_dist = 150,
|
||||
));
|
||||
|
||||
WAIT(ARGS.delay);
|
||||
|
||||
p->color = *RGBA(0.3, 0.8, 0.8, 0.0);
|
||||
projectile_set_prototype(p, pp_bullet);
|
||||
p->move = move_linear((global.plr.pos - p->pos) * 0.001);
|
||||
|
||||
cmplx vel = cdir(rng_sreal()*0.01) * (global.plr.pos - p->pos) * 0.001;
|
||||
p->move = move_linear(vel);
|
||||
p->move.retention = 1.02;
|
||||
|
||||
if(rng_chance(0.5)) {
|
||||
|
@ -83,16 +86,16 @@ TASK(kurumi_vampvape_slave, { cmplx pos; cmplx target; int time_offset; }) {
|
|||
int travel_time = sqrt(2 * cabs(ARGS.target - ARGS.pos) / cabs(acceleration));
|
||||
WAIT(travel_time);
|
||||
real step = 5;
|
||||
int step_count = VIEWPORT_H / step;
|
||||
int step_count = 1.2 * VIEWPORT_H / step;
|
||||
|
||||
for(int i = ARGS.time_offset; i < ARGS.time_offset + step_count; i++, YIELD) {
|
||||
real y = step * i;
|
||||
|
||||
int count = difficulty_value(3, 4, 5, 5);
|
||||
int count = difficulty_value(1, 3, 4, 5);
|
||||
float speed = difficulty_value(0.5, 0.7, 0.9, 0.95);
|
||||
|
||||
for(int j = 0; j < count; j++) {
|
||||
cmplx p = VIEWPORT_W / (real)count * (j + psin(i * i * j * j + i * i)) + I * y;
|
||||
cmplx p = VIEWPORT_W * (-0.3 + 1.6 / (real)count * (j + psin(i * exp(i) * j * j + i * i))) + I * y;
|
||||
cmplx dir = cdir(M_TAU * sin(245 * i + j * j * 3501));
|
||||
|
||||
if(cabs(p-global.plr.pos) > 60) {
|
||||
|
|
Loading…
Reference in a new issue