/// Invoked (from char-server) when a party is disbanded. int party_broken(int party_id) { struct party_data* p; int i; p = party_search(party_id); if( p == NULL ) return 0; if( p->instance_id ) { instance[p->instance_id].party_id = 0; instance_destroy( p->instance_id ); } for( i = 0; i < MAX_PARTY; i++ ) { if( p->data[i].sd!=NULL ) { clif_party_withdraw(p,p->data[i].sd,p->party.member[i].account_id,p->party.member[i].name,0x10); p->data[i].sd->status.party_id=0; } } idb_remove(party_db,party_id); return 0; }
void do_final_instance(void) { int i; for( i = 1; i < MAX_INSTANCE; i++ ) instance_destroy(i); }
void primal_destroy (primal_t *primal) { instance_destroy(primal->inst); RngStream_DeleteStream(primal->rng); free(primal->best_x); free(primal->improving_partial_x); free(primal->guiding_x); free(primal); }
void instance_destroy_all( INSTANCE * except ) { INSTANCE * i, * next ; i = first_instance ; while ( i ) { next = i->next ; if ( i != except ) instance_destroy( i ) ; i = next ; } }
static void resource_recover_escalate(void * inst) { struct resource *r = (struct resource *)inst; qb_enter(); qb_log(LOG_NOTICE, "Escalating failure of service %s to node %s:%s", r->name, r->assembly->uuid, r->assembly->name); qb_loop_timer_del(NULL, r->monitor_timer); instance_destroy(r->assembly); qb_leave(); }
int destroy(int id) { khint_t key = kh_get(m32, states, id); if (key != kh_end(states)) // check thet key exists { struct instance* inst = kh_val(states, key); kh_del(m32, states, key); instance_destroy(inst); return 1; } else { return 0; } }
void FireBall::onStep() { switch (dir) { case UPLEFT: y -= sp; x -= sp; break; case DOWNRIGHT: y += sp; x += sp; break; case DOWNLEFT: y += sp; x -= sp; break; case UPRIGHT: y -= sp; x += sp; break; } ((SpriteMap*) graphic)->playAnim("shake"); if (!place_free(x, y)) instance_destroy(); depth = y; };
/** * Truncate an ilist up to (but not including) a given inum. * * We also free all associated requests. */ static void ilist_truncate_prefix(instance_container *ilist, paxid_t inum) { struct paxos_instance *it; struct paxos_request *req; for (it = LIST_FIRST(ilist); it != (void *)ilist; it = LIST_FIRST(ilist)) { // Break if we've hit the desired stopping point. if (it->pi_hdr.ph_inum >= inum) { break; } // Free the instance and its associated request. req = request_find(&pax->rcache, it->pi_val.pv_reqid); if (req != NULL) { LIST_REMOVE(&pax->rcache, req, pr_le); request_destroy(req); } LIST_REMOVE(ilist, it, pi_le); instance_destroy(it); } }
/// Invoked (from char-server) when a party is disbanded. int party_broken(int party_id) { struct party_data* p; int i; p = party_search(party_id); if( p == NULL ) return 0; if( p->instance_id ) instance_destroy( p->instance_id ); for( i = 0; i < MAX_PARTY; i++ ) { if( p->data[i].sd != NULL ) { clif_party_withdraw(p->data[i].sd,p->party.member[i].account_id,p->party.member[i].name,PARTY_MEMBER_WITHDRAW_EXPEL,SELF); p->data[i].sd->status.party_id=0; } } idb_remove(party_db,party_id); return 1; }
/*-------------------------------------- * Timer to destroy instance by process or idle *--------------------------------------*/ int instance_destroy_timer(int tid, unsigned int tick, int id, intptr_t data) { instance_destroy(id); return 0; }
void roomstruct::gotome(bool gamestart) { //Destroy all objects for (enigma::iterator it = enigma::instance_list_first(); it; ++it) { it->myevent_roomend(); if (!((object_planar*)*it)->persistent) instance_destroy(it->id, false); } // Set the index to self room.rval.d = id; room_caption = cap; room_width = width; room_height = height; room_speed = spd; background_color = backcolor; background_showcolor = drawbackcolor; //Backgrounds start for (int i=0;i<8;i++) { background_visible[i] = backs[i].visible; background_foreground[i] = backs[i].foreground; background_index[i] = backs[i].background; background_x[i] = backs[i].area_x; background_y[i] = backs[i].area_y; background_hspeed[i] = backs[i].horSpeed; background_vspeed[i] = backs[i].verSpeed; background_htiled[i] = backs[i].tileHor; background_vtiled[i] = backs[i].tileVert; //background_stretch? = backs[i].stretch; } //Backgrounds end //Tiles start drawing_depths.clear(); for (int tilei=0; tilei<tilecount; tilei++) { tile t = tiles[tilei]; drawing_depths[t.depth].tiles.push_back(tiles[tilei]); } //Tiles end view_enabled = views_enabled; for (int i=0;i<8;i++) { view_xview[i] = views[i].area_x; view_yview[i] = views[i].area_y; view_wview[i] = views[i].area_w; view_hview[i] = views[i].area_h; view_xport[i] = views[i].port_x; view_yport[i] = views[i].port_y; view_wport[i] = views[i].port_w; view_hport[i] = views[i].port_h; view_object[i] = views[i].object2follow; view_hborder[i] = views[i].hborder; view_vborder[i] = views[i].vborder; view_hspeed[i] = views[i].hspd; view_vspeed[i] = views[i].vspd; view_visible[i] = (bool)views[i].start_vis; } window_default(); io_clear(); screen_init(); screen_refresh(); object_basic* is[instancecount]; for (int i = 0; i<instancecount; i++) { inst *obj = &instances[i]; is[i] = instance_create_id(obj->x,obj->y,obj->obj,obj->id); } if (gamestart) for (int i = 0; i<instancecount; i++) is[i]->myevent_gamestart(); for (int i = 0; i<instancecount; i++) is[i]->myevent_create(); createcode(); }