void PlayerStructureTerminal::prepareCustomRadialMenu(CreatureObject* player, uint8 itemCount)
{
	RadialMenu* radial	= new RadialMenu();

	// any object with callbacks needs to handle those (received with menuselect messages) !
	radial->addItem(1,0,radId_examine,radAction_Default,"");
	radial->addItem(2,0,radId_serverTerminalManagement,radAction_ObjCallback,"@player_structure:management");
	radial->addItem(3,0,radId_serverTerminalPermissions,radAction_ObjCallback, "@player_structure:permissions");

	//test if the caller is on the permission list

	//radial->addItem(4,2,radId_serverTerminalManagementDestroy,radAction_ObjCallback,"@player_structure:permission_destroy ");//destroy

	HouseObject* house = dynamic_cast<HouseObject*>(gWorldManager->getObjectById(this->getStructure()));
	if(house)
	{
		radial->addItem(4,2,radId_serverTerminalManagementDestroy,radAction_ObjCallback,"@player_structure:permission_destroy ");//destroy
		radial->addItem(5,2,radId_serverTerminalManagementStatus,radAction_ObjCallback,"@player_structure:management_status");
		radial->addItem(6,2,radId_serverTerminalManagementPay,radAction_ObjCallback,"@player_structure:management_pay");
		radial->addItem(7,2,radId_serverTerminalManagementPrivacy,radAction_ObjCallback,"@player_structure:management_privacy");

		radial->addItem(8,3,radId_serverTerminalPermissionsAdmin,radAction_ObjCallback,"@player_structure:permission_admin");
		radial->addItem(9,3,radId_serverTerminalPermissionsBanned,radAction_ObjCallback,"@player_structure:permission_banned");
		radial->addItem(10,3,radId_serverTerminalPermissionsEnter,radAction_ObjCallback,"@player_structure:permission_enter");

		 
		

	}
  
	RadialMenuPtr radialPtr(radial);
	mRadialMenu = radialPtr;

}
Ejemplo n.º 2
0
void Medicine::prepareCustomRadialMenu(CreatureObject* creatureObject, uint8 itemCount)
{
    RadialMenu* radial	= new RadialMenu();

    radial->addItem(1,0,radId_itemUse,radAction_ObjCallback,"");
    radial->addItem(2,0,radId_examine,radAction_ObjCallback,"");
    radial->addItem(3,0,radId_itemDestroy,radAction_ObjCallback,"");
    RadialMenuPtr radialPtr(radial);
    mRadialMenu = radialPtr;

}
Ejemplo n.º 3
0
//=============================================================================
// prepares the custom radial for our harvester
void FactoryObject::prepareCustomRadialMenu(CreatureObject* creatureObject, uint8 itemCount)
{
	PlayerObject* player = dynamic_cast<PlayerObject*>(creatureObject);
	if(!player)
	{	
		gLogger->logMsgF("HarvesterObject::handleObjectMenuSelect::could not find player",MSG_HIGH);
		return;
	}
	
	RadialMenu* radial	= new RadialMenu();
			
	
	//radId_serverHouseManage
	uint8 i = 0;
	radial->addItem(++i,0,radId_examine,radAction_Default,"");
	radial->addItem(++i,0,radId_serverHarvesterManage,radAction_ObjCallback,"Structure Management");
	radial->addItem(++i,0,radId_serverTerminalManagement,radAction_ObjCallback,"Structure Permissions");
	radial->addItem(++i,0,radId_StructureOptions,radAction_ObjCallback,"Options");
	
	radial->addItem(++i,2,radId_serverTerminalManagementDestroy,radAction_ObjCallback,"Destroy Structure");
	radial->addItem(++i,2,radId_StructureStatus,radAction_ObjCallback,"Status");
	radial->addItem(++i,2,radId_payMaintenance,radAction_ObjCallback,"Pay Maintenance");
	radial->addItem(++i,2,radId_setName,radAction_ObjCallback,"Set Name");
	radial->addItem(++i,2,radId_depositPower,radAction_ObjCallback,"Deposit Power");
	
	
	radial->addItem(++i,3,radId_serverTerminalPermissionsAdmin,radAction_ObjCallback,"Admin List");
	radial->addItem(++i,3,radId_serverTerminalPermissionsHopper,radAction_ObjCallback,"Hopper List");

	if(mManSchematicID)
	{
		if(!mActive)
			radial->addItem(++i,4,radId_StartManufacture,radAction_ObjCallback,"Start manufacturing objects");
		else
			radial->addItem(++i,4,radId_StopManufacture,radAction_ObjCallback,"Stop manufacturing objects");

		radial->addItem(++i,4,radId_ListIngredients,radAction_ObjCallback,"List ingredients needed for station");

	}
	radial->addItem(++i,4,radId_serverManfStationSchematic,radAction_ObjCallback,"Access schematic slot");
	radial->addItem(++i,4,radId_serverManfHopperInput,radAction_ObjCallback,"Access station ingredient hopper");
	radial->addItem(++i,4,radId_serverManfHopperOutput,radAction_ObjCallback,"Access station output hopper");
	
	

		
	RadialMenuPtr radialPtr(radial);
	mRadialMenu = radialPtr;
}
Ejemplo n.º 4
0
void Deed::prepareCustomRadialMenu(CreatureObject* creatureObject, uint8 itemCount)
{

	RadialMenu* radial	= new RadialMenu();

	uint8 radId = 1;

	//if we have a prefab Menu (we will have one as a deed)  iterate through it and add it to our response
	//this way we will have our menu item numbering done right
	
	MenuItemList* menuItemList = 		getMenuList();
	if(menuItemList)
	{
		MenuItemList::iterator it	=	menuItemList->begin();

		while(it != menuItemList->end())
		{
			radId++;
			
			if((*it)->sIdentifier == 7)
			{
				radial->addItem((*it)->sItem,(*it)->sSubMenu,(RadialIdentifier)(*it)->sIdentifier,radAction_ObjCallback,"");
			}
			else
				radial->addItem((*it)->sItem,(*it)->sSubMenu,(RadialIdentifier)(*it)->sIdentifier,radAction_Default,"");

			//gLogger->logMsgF("menu item id : %u",MSG_HIGH,(*it)->sIdentifier);
			it++;
		}
	}
	 

	radial->addItem(radId++,0,radId_itemUse,radAction_ObjCallback,"");
	radial->addItem(radId++,0,radId_examine,radAction_ObjCallback,"");
	radial->addItem(radId++,0,radId_itemDestroy,radAction_ObjCallback,"");
	RadialMenuPtr radialPtr(radial);
	mRadialMenu = radialPtr;
}
Ejemplo n.º 5
0
//=============================================================================
// prepares the custom radial for our harvester
void HarvesterObject::prepareCustomRadialMenu(CreatureObject* creatureObject, uint8 itemCount)
{
    PlayerObject* player = dynamic_cast<PlayerObject*>(creatureObject);
    if(!player)
    {
        gLogger->log(LogManager::DEBUG,"HarvesterObject::prepareCustomRadialMenu::could not find player");
        return;
    }

    RadialMenu* radial	= new RadialMenu();

    //radId_serverHouseManage
    radial->addItem(1,0,radId_examine,radAction_Default,"");
    radial->addItem(2,0,radId_serverHarvesterManage,radAction_ObjCallback,"Structure Management");
    radial->addItem(3,0,radId_serverTerminalManagement,radAction_ObjCallback,"Structure Permissions");

    radial->addItem(4,2,radId_serverTerminalManagementDestroy,radAction_ObjCallback,"Destroy Structure");//destroy
    radial->addItem(5,2,radId_StructureStatus,radAction_ObjCallback,"Status");//destroy
    radial->addItem(6,2,radId_payMaintenance,radAction_ObjCallback,"Pay Maintenance");//destroy
    radial->addItem(7,2,radId_setName,radAction_ObjCallback,"Set Name");//destroy
    radial->addItem(8,2,radId_operateHarvester,radAction_ObjCallback,"Operate Harvester");//destroy


    //generators dont need power
    uint32 type = this->getHarvesterFamily();
    if((type != 41)&&(type != 42)&&(type != 43))
        radial->addItem(9,2,radId_depositPower,radAction_ObjCallback,"Deposit Power");//destroy


    radial->addItem(10,3,radId_serverTerminalPermissionsAdmin,radAction_ObjCallback,"Admin List");//destroy
    radial->addItem(11,3,radId_serverTerminalPermissionsHopper,radAction_ObjCallback,"Hopper List");//destroy



    RadialMenuPtr radialPtr(radial);
    mRadialMenu = radialPtr;
}