In current script I can add vitals (vitals.cfg) but character dies
when life go to zero on vital "Life" and this is hard-coded.
A new setting in vital:
"DieWhen 0"
that decide tha character dies when precise vital reach zero?
It could be usefull to use "DieWhen" on multiple vital also.
What do you think?
die and custom vitals setup
That's not a bad idea.
Like when mana reaches zero you die.
Could be like a set of flags. Might look something like this
// Flags to check for death on certain stats
ChecDeathStr 1 // a 1 means watch this stat a 0 means ignore this stat
CheckDeathSta 1
CheckDeathMan 1
DeathWhenStr 0 //sets the level to kill the character
DeathWhenSta 0
DeathWhenMan 0
Like when mana reaches zero you die.
Could be like a set of flags. Might look something like this
// Flags to check for death on certain stats
ChecDeathStr 1 // a 1 means watch this stat a 0 means ignore this stat
CheckDeathSta 1
CheckDeathMan 1
DeathWhenStr 0 //sets the level to kill the character
DeathWhenSta 0
DeathWhenMan 0
Vital customization is incomplete if scripter can't define itself when mobile die.
There is function death.src and chardeath.src in misc.
I think it could be also exist a
and
And after an old core function not very loved by staff (aready I suggested it):
that kill but do not pass from vital mechanisms. I think that if vitals are custom shuld be possibile kill a mobile without use vital internal core functions.
I could also need to define that player do not more ever but only script can do die it with KillMobile() command.
This could be very flexibile.
And it cound be nice also to "define" new player status... non only live od dead... for a player it cound be interesting applly a new "state" like not_dead and for every state define what to do with vitals.
A command like:
that substituite:
There is function death.src and chardeath.src in misc.
I think it could be also exist a
Code: Select all
misc/candeath.srcCode: Select all
misc/CanChrdeath.srcCode: Select all
KillMobile()I could also need to define that player do not more ever but only script can do die it with KillMobile() command.
This could be very flexibile.
And it cound be nice also to "define" new player status... non only live od dead... for a player it cound be interesting applly a new "state" like not_dead and for every state define what to do with vitals.
A command like:
Code: Select all
const DIE := 0x01;
const LIVE := 0x02;
const NEW_STATE := 0x03;
ApplyMobileStatus(status);
Code: Select all
KillMobile() -> ApplyMobileStatus(DIE);
Resurrect(mobile, flags := 0); -> ApplyMobileStatus(LIVE);
deathtest
By the way, it would be nice if before calling death or chrdeath scripts, like when deciding wether an object is to be allowed for equipping with equiptest.ecl script, death would be tested with some (chr)deathtest.ecl script, returning 1 or 0 if the script is allowing or not death, respectively.
It's something like a generalized or customized invulnerability right; if the mob is invulnerable, the script is not called and death doesn't occur; otherwise the core runs (chr)death script only if (chr)deathtest returns 1.
It would be cool and useful for many situations
Regards
It's something like a generalized or customized invulnerability right; if the mob is invulnerable, the script is not called and death doesn't occur; otherwise the core runs (chr)death script only if (chr)deathtest returns 1.
It would be cool and useful for many situations
Regards