void g1_tile_class::init() { flags=SELECTABLE; texture=0; filename_checksum=0; selection_order=0; damping_fraction=1.0f; damping_e=1.0f; friction_fraction=1.0f; damage=0; set_friction(g1_resources.damping_friction); }
/** * リスタート時の処理 * */ void Girl::restart() { ActiveObject::restart(); set_angular_factor( 0 ); set_friction( 0 ); mode_ = MODE_STAND; play_animation( "Stand", true, true ); flicker_base_location_ = get_start_location(); }
// format of ("texture_name" (property_name prop_value)..) void g1_tile_class::get_properties(li_object * properties, li_environment * env) { while (properties) { li_symbol * sym=li_symbol::get(li_car(li_car(properties,env),env),env); li_object * temp=li_cdr(li_car(properties,env),env); if (!temp) { li_error(env,"USER: Missing texture property argument"); } li_object * value=li_car(temp,env); if (sym==li_get_symbol("block", g1_block)) { if (li_get_bool(value,env)) { flags|=BLOCKING; } else { flags&=~BLOCKING; } } else if (sym==li_get_symbol("wave", g1_wave)) { if (li_get_bool(value,env)) { flags|=WAVE; } else { flags&=~WAVE; } } else if (sym==li_get_symbol("selectable", g1_selectable)) { //By default, this property is true. if (li_get_bool(value, env)) { flags|=SELECTABLE; } else { flags&=~SELECTABLE; } } else if (sym==li_get_symbol("friction", g1_friction)) { set_friction((float)(li_float::get(value,env)->value())); } else if (sym==li_get_symbol("damage", g1_damage)) { damage = li_int::get(value,env)->value(); } else if (sym==li_get_symbol("save_name", g1_save_name)) { w32 newkey=i4_str_checksum(i4_const_str(li_string::get(value,env)->value())); //must fake the insertion of a pointer g1_tile_man.store_alternate_checksum(newkey,filename_checksum); filename_checksum=newkey; } else if (sym==li_get_symbol("alternate_checksum", g1_alternate_checksum)) { w32 newkey=li_int::get(value,env)->value(); if (newkey!=0 && newkey!=filename_checksum) { g1_tile_man.store_alternate_checksum(newkey,filename_checksum); filename_checksum=newkey; } } else if (sym==li_get_symbol("flags")) { //Used internally for flag saving flags=li_int::get(value,env)->value(); } else { i4_error("bad texture flag '%s' should be block, wave, selectable, friction, save_name, alternate_checksum or flags", sym->name()->value()); } properties=li_cdr(properties,env); } }