Entry 194
"The heals', cures', revivals' and resistant shield's effects started in play; the party panels shake and the protect marks show"
Filescrates/piney-game/src/fx.rscrates/piney-game/src/area.rscrates/piney-game/src/session.rsdocs/engine/effects.md
The same check as 0193's, on piney-battle's rule events
(piney_battle::event::Event), found nine variants read nowhere in
piney-world or piney-game. The combat hands them on as Show::Rule, and
piney-game's fx::event handled ten of the variants with _ => {} for the
rest.
Commit c3e15bb had ported and tested the effects for these events in
piney-effect: effHealSkill, effCure, effSanity, effResurrect and
effResistantShield, with eemu checks and shots. It also wrote
effects.md's table of which event starts which. The runtime never got
the calls. So in play:
- a heal (Repth, a member's heal, the healing items through
ccSkillRecovery) showed no light; - an Antidote, a Restorative or a Resurrect showed nothing;
- an Exdefense immunity showed no shield.
Now fx::event:
HealSkill { on, sid }callsfx.heal_skill,Cure,SanityandResurrectcall their effects, andResistantShield { on, magic }callsfx.resistant_shield(.., magic, -1).a_heal_shows_its_light: Kite casts Repth on himself in event 3's field; effect 130 (CMP_x060) and the controller -19 of the rising lights come up.
The menu's two. PanelBure { slot, n } (ccMenuCtrl::SetPanelBure:
a party panel shakes as its member is hit) and SetProtect { state, on }
(the protect marks over a character whose protect a hit broke or which
regained it). The field UI had both (MenuCtrl::set_panel_bure,
set_protect) but no caller. AreaMode::menu_rules now reads them from
the frame's shows, the rules inside a Kite's, member's or enemy's output
included, and gives SetProtect the character's CharInfo.
The sweep found three other effect sets ported but never started:
effSkillStart:Show::SkillStartis pushed and read by nobody.kite::Out::SkillStart,fellow::Out::SkillStartandenemy_ai::Out::SkillStartare dropped.effPhysicalSkillHitShockWave:flow::MainOut::shock_wavesis counted and never read.ccChar::DispConditionEffect, and with iteffAbilityUpandeffAbilityDown.
These are the next worklog's.
The panel's shake and the protect marks were not compared with the game's pictures.