Esempio n. 1
0
// 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, &ampLin[i], &ampDb[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);

}
Esempio n. 2
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" }));
Esempio n. 3
0
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" }));
Esempio n. 4
0
// 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, &ampLin[ch], &ampDb[ch]);
  ctl_set_amp(ch);
  level[ch] = l;
  print_dbg("\r\n changed level control: 0x");
  print_dbg_hex(l);
}
Esempio n. 5
0
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" }));