public void Move() { string dir = VerbToDir(); ObjTableEntry curRoom = objTable.GetObj(GetPlayerRoom()); int newRoom = curRoom.GetObjAttr(dir); if (newRoom < 127) { ObjTableEntry newr = objTable.GetObj(newRoom); if (newr.GetObjAttr("DOOR") == 1) { if (newr.GetObjAttr("OPEN") == 0) { PrintStringCr("THE " + newr.name + " IS CLOSED."); return; } else { newRoom = GetObjectAttr(newRoom, dir); } } objTable.SetObjAttr(PLAYER, "HOLDER", newRoom); Look(); } else { newRoom = 255 - newRoom; PrintStringCr(nogoTable.GetEntry(newRoom + 1)); } }
bool check_move() { string dir = VerbToDir(); ObjTableEntry curRoom = objTable.GetObj(GetPlayerRoom()); int newRoom = 255; if (dir != "IN") { newRoom = curRoom.GetObjAttr(dir); } else { ObjTableEntry tgtObj = objTable.GetObj(dobj); newRoom = tgtObj.GetObjAttr(dir); } if (newRoom < 127) { ObjTableEntry newr = objTable.GetObj(newRoom); if (newr.GetObjAttr("DOOR") == 1) { if (newr.GetObjAttr("OPEN") == 0) { PrintStringCr("The " + newr.printedName + " is closed."); return(false); } } return(true); } else { newRoom = 255 - newRoom; PrintStringCr(nogoTable.GetEntry(newRoom + 1)); return(false); } }
public void Add(ObjTableEntry ote) { objects[ote.GetObjAttr("id")] = ote; }