int SelectNextFoundSeg(void) { if (++Found_seg_index >= Found_segs.count()) Found_seg_index = 0; Cursegp = segptridx(Found_segs[Found_seg_index]); med_create_new_segment_from_cursegp(); Update_flags |= UF_WORLD_CHANGED; if (Lock_view_to_cursegp) set_view_target_from_segment(Cursegp); editor_status("Curseg assigned to next found segment."); return 1; }
int SelectPreviousFoundSeg(void) { if (Found_seg_index > 0) Found_seg_index--; else Found_seg_index = Found_segs.count()-1; Cursegp = segptridx(Found_segs[Found_seg_index]); med_create_new_segment_from_cursegp(); Update_flags |= UF_WORLD_CHANGED; if (Lock_view_to_cursegp) set_view_target_from_segment(Cursegp); editor_status("Curseg assigned to previous found segment."); return 1; }
//Moves to next object in the mine, skipping the player int ObjectSelectPrevInMine() { int i; for (i=0;i<MAX_OBJECTS;i++) { if (!(Cur_object_index --)) Cur_object_index = MAX_OBJECTS-1; const auto &&objp = vcobjptr(Cur_object_index); if (objp->type != OBJ_NONE && objp != ConsoleObject) { Cursegp = segptridx(objp->segnum); med_create_new_segment_from_cursegp(); //Cur_object_seg = Cursegp; return 1; } } Cur_object_index = object_none; Update_flags |= UF_WORLD_CHANGED; return 0; }