// set the initial state void ctl_init(void) { int i; // set inputs to defaults for(i=0; i<4; i++) { level[i] = maxLevelInput; scale_level(maxLevelInput, &Lin[i], &Db[i]); ctl_set_amp(i); } // set other parameters to fixed values // adc multiplier slew // this integrator value is very fast, but enough to prevent clicks ctl_param_change( eParam_adcSlew0, 0x7fe00000); ctl_param_change( eParam_adcSlew1, 0x7fe00000); ctl_param_change( eParam_adcSlew2, 0x7fe00000); ctl_param_change( eParam_adcSlew3, 0x7fe00000); // cv slew ctl_param_change( eParam_cvSlew0, 0); ctl_param_change( eParam_cvSlew1, 0); ctl_param_change( eParam_cvSlew2, 0); ctl_param_change( eParam_cvSlew3, 0); // cv values ctl_param_change( eParam_cv0, 0); ctl_param_change( eParam_cv1, 0); ctl_param_change( eParam_cv2, 0); ctl_param_change( eParam_cv3, 0); }
static void create() { ::create(); set_race("fly"); set_name("fly"); add_long("It is flying around in circles."); scale_level(1, 3); scale_dex(8, 10); scale_ac(0, 2); scale_wc(1, 2); set_al(0); setmin("flies in"); setmout("flies"); add_property("unarmed_damage_type",({ "blunt" }));
static void create() { ::create(); set_race("turtle"); set_name("turtle"); scale_level(5, 13); scale_str(8, 16); scale_dex(2, 6); set_al(random(500)); setmin("enters"); setmout("leaves slowly"); add_property("unarmed_weapon_name", "mouth"); add_property("unarmed_damage_type", ({ "blunt", "bite", "bite", "bite" }));
// increment a level control // (e.g. from encoder handler) extern void ctl_inc_level(u32 ch, s32 inc) { s32 l; ch &= 3; // clamp increment to prevent overflow if(inc < -65000) { inc = -65000; print_dbg("\r\n !! clamp inc low"); } if(inc > 65000) { inc = 65000; print_dbg("\r\n !! clamp inc high"); } l = level[ch] + inc; // clamp addition result if(l < minLevelInput) { l = minLevelInput; } if(l > maxLevelInput) { l = maxLevelInput; } scale_level(l, &Lin[ch], &Db[ch]); ctl_set_amp(ch); level[ch] = l; print_dbg("\r\n changed level control: 0x"); print_dbg_hex(l); }
static void create() { ::create(); set_name("skeleton"); add_long("It is tattered with dried flesh."); scale_level(14, 17); scale_hp(250, 325); scale_wc(28, 32); scale_ac(4, 7); set_al(-500); set_aggressive(1); setmin("stumbles in"); setmout("stumbles"); add_money(random(600)); add_property("unarmed_damage_type", ({ "claw", "bite" }));