void Fl_Overlay_Window::redraw_overlay() { if (!fl_display) return; // this prevents fluid -c from opening display if (!overlay_) { if (can_do_overlay()) { overlay_ = new _Fl_Overlay(0,0,w(),h()); add_resizable(*overlay_); overlay_->show(); } else { overlay_ = this; // fake the overlay } } if (shown()) { if (overlay_ == this) { set_damage(damage()|FL_DAMAGE_OVERLAY); Fl::damage(FL_DAMAGE_CHILD); } else { overlay_->redraw(); } } }
void Character::attack(Character *enemy) { set_damage(random.gen_rand_int(min_damage, max_damage)); enemy->set_health(enemy->get_health() - damage); std::cout << this->get_name() << " attacks " << enemy->get_name() << " by " << damage << " points.\n" << enemy->get_name() << " health is " << enemy->get_health() << std::endl; }
//initialize is called by each constructor void ascii_man::initialize(float _gravity) { set_temp_mv(NULL); set_gravity(_gravity); set_render(""," 0 "," 8="," /\\",""); set_pt(20,2); set_xt(1.2,1.5); set_mv(0,0); set_mass(3); set_frict((float)0.55); dir = 1; set_damage(10); set_health(50); }
void Fl_Overlay_Window::flush() { #if BOXX_OVERLAY_BUGS if (overlay_ && overlay_ != this && overlay_->shown()) { // all drawing to windows hidden by overlay windows is ignored, fix this XUnmapWindow(fl_display, fl_xid(overlay_)); Fl_Double_Window::flush(0); XMapWindow(fl_display, fl_xid(overlay_)); return; } #endif bool erase_overlay = (damage()&FL_DAMAGE_OVERLAY) != 0; set_damage(damage()&~FL_DAMAGE_OVERLAY); Fl_Double_Window::flush(erase_overlay); if (overlay_ == this) draw_overlay(); fl_clip_region(0); // turn off any clip it left on }
void Fl_Overlay_Window::redraw_overlay() { overlay_ = this; set_damage(damage()|FL_DAMAGE_OVERLAY); Fl::damage(FL_DAMAGE_CHILD); }
void item::load_info( const std::string &data ) { std::istringstream dump(data); char check=dump.peek(); if ( check == ' ' ) { // sigh.. check=data[1]; } if ( check == '{' ) { JsonIn jsin(dump); try { deserialize(jsin); } catch( const JsonError &jsonerr ) { debugmsg("Bad item json\n%s", jsonerr.c_str() ); } return; } unset_flags(); clear_vars(); std::string idtmp, ammotmp, item_tag, mode; int lettmp, damtmp, acttmp, corp, tag_count; int owned; // Ignoring an obsolete member. dump >> lettmp >> idtmp >> charges >> damtmp >> tag_count; for( int i = 0; i < tag_count; ++i ) { dump >> item_tag; if( itag2ivar(item_tag, item_vars ) == false ) { item_tags.insert( item_tag ); } } dump >> burnt >> poison >> ammotmp >> owned >> bday >> mode >> acttmp >> corp >> mission_id >> player_id; corpse = NULL; getline(dump, corpse_name); if( corpse_name == " ''" ) { corpse_name = ""; } else { size_t pos = corpse_name.find_first_of( "@@" ); while (pos != std::string::npos) { corpse_name.replace( pos, 2, "\n" ); pos = corpse_name.find_first_of( "@@" ); } corpse_name = corpse_name.substr( 2, corpse_name.size() - 3 ); // s/^ '(.*)'$/\1/ } gun_set_mode( mode ); if( idtmp == "UPS_on" ) { idtmp = "UPS_off"; } else if( idtmp == "adv_UPS_on" ) { idtmp = "adv_UPS_off" ; } convert( idtmp ); invlet = char(lettmp); set_damage( damtmp ); active = false; if (acttmp == 1) { active = true; } }