I had some fun with obj_dude:
Haven't checked what's it in source, but this will let the dude fall on its arse when checking him. Floats:
{200}{}{FUCK!}
{201}{}{*Uffa*}
{202}{}{Not again!}
{203}{}{Why does this keep happening?}
{204}{}{Mum!}
{205}{}{Shoe untied...}
{206}{}{Must learn to keep mouth closed.}
{207}{}{Why bother...}
...
Needs actually a combat check [if (combat_is_initialized == 0) then begin] as combat blocks a lot of stuff (incl. animation). However, without it, examining oneself allows to trigger a "combat float" which is also funny, actually.
And
While on its arse it Floats:
{210}{}{Help!}
{211}{}{I can't get up.}
{212}{}{1... 2... 3...}
{213}{}{Still alive!}
{214}{}{I think brahmin was here.}
{215}{}{Anybody?}
{216}{}{*chrrr* *omomomom* *chrrr*}
{217}{}{Why get up when you can fall down again?}
P.S. Could also get a proper standing up animation (in critter_proc?), and find a better fall animation (although I like the sudden flopping on its face and quick getting back up ones). Also this optimizing starts to push it beyond the joke a bit.
Code:
procedure description_p_proc begin
reg_anim_func(2, dude_obj);
reg_anim_func(1, 1);
reg_anim_animate(dude_obj, 49, -1);
float_msg(dude_obj, message_str(1, random(200, 207)), 8);
metarule3(100, self_obj, 21, 0);
add_timer_event(dude_obj, game_ticks(10), 21);
reg_anim_func(3, 0);
end
{200}{}{FUCK!}
{201}{}{*Uffa*}
{202}{}{Not again!}
{203}{}{Why does this keep happening?}
{204}{}{Mum!}
{205}{}{Shoe untied...}
{206}{}{Must learn to keep mouth closed.}
{207}{}{Why bother...}
...
Needs actually a combat check [if (combat_is_initialized == 0) then begin] as combat blocks a lot of stuff (incl. animation). However, without it, examining oneself allows to trigger a "combat float" which is also funny, actually.
And
Code:
procedure timed_event_p_proc begin
...
if (fixed_param == 21) then begin
if (critter_state(self_obj) != 0) then begin
float_msg(dude_obj, message_str(1, random(210, 217)), 8);
add_timer_event(dude_obj, game_ticks(10), 21);
end
else begin
metarule3(100, self_obj, 21, 0);
end
end
{210}{}{Help!}
{211}{}{I can't get up.}
{212}{}{1... 2... 3...}
{213}{}{Still alive!}
{214}{}{I think brahmin was here.}
{215}{}{Anybody?}
{216}{}{*chrrr* *omomomom* *chrrr*}
{217}{}{Why get up when you can fall down again?}
P.S. Could also get a proper standing up animation (in critter_proc?), and find a better fall animation (although I like the sudden flopping on its face and quick getting back up ones). Also this optimizing starts to push it beyond the joke a bit.