void CMenuMarcher::OnRender(CGameRenderingContext* pContext) const { BaseClass::OnRender(pContext); if (!GameServer()->GetRenderer()->IsRenderingTransparent()) RenderTurret(); }
void CBuildings::OnRender() { if(Client()->State() < IClient::STATE_ONLINE) return; int Num = Client()->SnapNumItems(IClient::SNAP_CURRENT); for(int i = 0; i < Num; i++) { IClient::CSnapItem Item; const void *pData = Client()->SnapGetItem(IClient::SNAP_CURRENT, i, &Item); if(Item.m_Type == NETOBJTYPE_TURRET) { const struct CNetObj_Turret *pTurret = (const CNetObj_Turret *)pData; const void *pPrev = Client()->SnapFindItem(IClient::SNAP_PREV, Item.m_Type, Item.m_ID); RenderTurret(pTurret, pPrev ? (const CNetObj_Turret *)pPrev : pTurret); } else if(Item.m_Type == NETOBJTYPE_POWERUPPER) RenderPowerupper((const CNetObj_Powerupper *)pData); else if(Item.m_Type == NETOBJTYPE_SHOP) RenderShop((const CNetObj_Shop *)pData); else if (Item.m_Type == NETOBJTYPE_BUILDING) { const struct CNetObj_Building *pBuilding = (const CNetObj_Building *)pData; const void *pPrev = Client()->SnapFindItem(IClient::SNAP_PREV, Item.m_Type, Item.m_ID); switch (pBuilding->m_Type) { case BUILDING_SAWBLADE: RenderSawblade(pBuilding); break; case BUILDING_MINE1: RenderMine(pBuilding); break; case BUILDING_MINE2: RenderElectromine(pBuilding); break; case BUILDING_BARREL: RenderBarrel(pBuilding, pPrev ? (const CNetObj_Building *)pPrev : pBuilding); break; case BUILDING_POWERBARREL: RenderPowerBarrel(pBuilding, pPrev ? (const CNetObj_Building *)pPrev : pBuilding); break; case BUILDING_LAZER: RenderLazer(pBuilding); break; case BUILDING_FLAMETRAP: RenderFlametrap(pBuilding, pPrev ? (const CNetObj_Building *)pPrev : pBuilding); break; case BUILDING_BASE: RenderBase(pBuilding); break; case BUILDING_STAND: RenderStand(pBuilding, pPrev ? (const CNetObj_Building *)pPrev : pBuilding); break; case BUILDING_REACTOR: RenderReactor(pBuilding); break; case BUILDING_TESLACOIL: RenderTeslacoil(pBuilding, pPrev ? (const CNetObj_Building *)pPrev : pBuilding); break; case BUILDING_REACTOR_DESTROYED: RenderDestroyedReactor(pBuilding); break; case BUILDING_SWITCH: RenderSwitch(pBuilding); break; case BUILDING_DOOR1: RenderDoor1(pBuilding); break; case BUILDING_GENERATOR: RenderGenerator(pBuilding, pPrev ? (const CNetObj_Building *)pPrev : pBuilding); break; case BUILDING_SCREEN: RenderScreen(pBuilding); break; /* case BUILDING_SHOP: RenderShop(pBuilding); break; */ default:; }; //m_pClient->m_pEffects->Light(vec2(pBuilding->m_X, pBuilding->m_Y), 512); } } }