void Engine::CGraphicDev::Release(void) { if(Engine::Safe_Release(m_pDevice)) MSG_BOX("m_pGraphicDev Release Failed"); if(Engine::Safe_Release(m_pSDK)) MSG_BOX("m_pSDK Release Failed"); delete this; }
uint8_t server_start (IPaddress address) { if (server_socket) { LOG("Server is already running; cannot restart"); return (true); } gsocketp s; address.host = 0; s = socket_listen(address); if (!s) { char *tmp = iptodynstr(address); MSG_BOX("Failed to start server on %s", tmp); myfree(tmp); return (false); } LOG("Server: Listening on %s", socket_get_local_logname(s)); server_socket = s; on_server = true; return (true); }
void CAniBuffer::CreateBuffer() { if (this->m_nVertices != 0) { unsigned int ByteWidth = ((unsigned int)((this->m_nStride * this->m_nVertices) / 16) * 16) + 16; D3D11_BUFFER_DESC BD; ZeroMemory(&BD, sizeof(D3D11_BUFFER_DESC)); BD.Usage = D3D11_USAGE::D3D11_USAGE_DEFAULT; BD.ByteWidth = ByteWidth; BD.BindFlags = D3D11_BIND_FLAG::D3D11_BIND_VERTEX_BUFFER; BD.CPUAccessFlags = 0; D3D11_SUBRESOURCE_DATA SD; ZeroMemory(&SD, sizeof(D3D11_SUBRESOURCE_DATA)); SD.pSysMem = this->m_pVertex; if (FAILED(m_pDevice->m_pDevice->CreateBuffer(&BD, &SD, &this->m_pVertexBuffer))) { MSG_BOX(L"Vertex Buffer Create Failed!"); getchar(); exit(0); } m_vecBuffer.push_back(this->m_pVertexBuffer); } }
//------------------------------------------------------------------- VstIntPtr master::call(VstInt32 opcode, VstInt32 index, VstIntPtr value, void *ptr, float opt) const { if(m_aeffect == 0) { MSG_BOX("vst::master::call() with m_aeffect=NULL"); return 0; } if(m_aeffect->dispatcher == 0) { MSG_BOX("vst::master::call() with m_aeffect->dispatcher=NULL"); return 0; } return m_aeffect->dispatcher(m_aeffect, opcode, index, value, ptr, opt); }
VertexAni* CAniBuffer::GetVertex(unsigned int _nIndex) { if (this->m_nVertices <= _nIndex) { MSG_BOX(L"WARNNING! Out Of Range"); return nullptr; } else return &m_pVertex[_nIndex]; }
musicp music_load (const char *file, const char *name_alias) { if (name_alias) { musicp m = music_find(name_alias); if (m) { return (m); } } if (!file) { if (!name_alias) { ERR("no file for music"); } else { ERR("no file for music loading %s", name_alias); } } if (!all_music) { all_music = tree_alloc(TREE_KEY_STRING, "TREE ROOT: music"); } musicp m = (typeof(m)) myzalloc(sizeof(*m), "TREE NODE: music"); m->tree.key = dupstr(name_alias, "TREE KEY: music"); if (!tree_insert(all_music, &m->tree.node)) { ERR("music insert name_alias [%s] failed", name_alias); } m->data = ramdisk_load(file, &m->len); if (!m->data) { ERR("cannot load music %s", file); } SDL_RWops *rw; rw = SDL_RWFromMem(m->data, m->len); if (!rw) { ERR("cannot make RW music %s", file); } #if SDL_MAJOR_VERSION == 1 && SDL_MINOR_VERSION == 2 /* { */ m->music = Mix_LoadMUS_RW(rw); #else m->music = Mix_LoadMUS_RW(rw, false); #endif /* } */ if (!m->music) { MSG_BOX("Mix_LoadMUS_RW fail %s: %s %s", file, Mix_GetError(), SDL_GetError()); SDL_ClearError(); } DBG("Load %s", file); return (m); }
CNpc* CNpc::Create(LPDIRECT3DDEVICE9 pGraphicDev) { CNpc* pGameObject = new CNpc(pGraphicDev); if (FAILED(pGameObject->Initialize())) { MSG_BOX("CMonster Create Faild"); ::Safe_Release(pGameObject); } return pGameObject; }
CTimer* CTimer::Create(void) { CTimer* pTimer = new CTimer; if(FAILED(pTimer->Init_Timer())) { MSG_BOX("CTimer Create Failed"); Engine::Safe_Release(pTimer); } return pTimer; }
CMainApp* CMainApp::Create(void) { CMainApp* pMainApp = new CMainApp; if(FAILED(pMainApp->Initialize())) { MSG_BOX("CMainApp Create Failed"); ::Safe_Release(pMainApp); } return pMainApp; }
HRESULT CMainApp::Initialize(void) { // 장치를 초기화한다. if(FAILED(Engine::Ready_GraphicDev(Engine::CGraphicDev::MODE_WIN, g_hWnd, WINSIZEX, WINSIZEY))) { MSG_BOX("Ready_GraphicDev Failed"); return E_FAIL; } if(FAILED(Engine::Ready_Management(Engine::Get_GraphicDev()))) { MSG_BOX("Ready_Management Failed"); return E_FAIL; } if(FAILED(Engine::Change_Scene(CSceneSelector(CSceneSelector::SCENE_LOGO)))) { MSG_BOX("Change_Scene(SCENE_LOGO) Failed"); return E_FAIL; } return S_OK; }
HRESULT Engine::CGraphicDev::Ready_GraphicDev(WINMODE Mode, HWND hWnd, const WORD& wSizeX, const WORD& wSizeY) { m_pSDK = Direct3DCreate9(D3D_SDK_VERSION); D3DCAPS9 devicecaps; ZeroMemory(&devicecaps, sizeof(D3DCAPS9)); if(FAILED(m_pSDK->GetDeviceCaps(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, &devicecaps))) { MSG_BOX("GetDeviceCaps Failed"); return E_FAIL; } DWORD vp; if(devicecaps.DevCaps & D3DDEVCAPS_HWTRANSFORMANDLIGHT) vp = D3DCREATE_HARDWARE_VERTEXPROCESSING; else vp = D3DCREATE_SOFTWARE_VERTEXPROCESSING; vp |= D3DCREATE_MULTITHREADED; D3DPRESENT_PARAMETERS d3dpp; ZeroMemory(&d3dpp, sizeof(D3DPRESENT_PARAMETERS)); SetParameters(d3dpp, Mode, hWnd, wSizeX, wSizeY); if(FAILED(m_pSDK->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL , hWnd, vp, &d3dpp, &m_pDevice))) { MSG_BOX("CreateDevice Failed"); return E_FAIL; } return S_OK; }
//------------------------------------------------------------------- VstIntPtr master::dispatch (AEffect *effect, VstInt32 opcode, VstInt32 index, VstIntPtr value, void *ptr, float opt) { // get version request if(effect == 0 && index == 0 && value == 0 && ptr == 0 && opt == 0) return kVstVersion; master *mst = m_map[effect]; if(mst) return mst->callback(opcode, index, value, ptr, opt); MSG_BOX("vst::master for (AEffect *)%p not found!", effect); return 0; }
uint8_t server_init (void) { if (server_init_done) { return (true); } command_add(server_players_show, "show server players", "show all players state"); command_add(server_shout, "notify [A-Za-z0-9_-]*", "shout to all players"); uint16_t portno; portno = global_config.user_server_port; if (!portno) { portno = global_config.server_port; if (!portno) { portno = SERVER_DEFAULT_PORT; } } LOG("Server: Trying to resolve server address %s:%u", SERVER_DEFAULT_HOST, portno); if (address_resolve(&server_address, SERVER_DEFAULT_HOST, portno)) { MSG_BOX("Open socket, cannot resolve %s:%u", SERVER_DEFAULT_HOST, portno); return (false); } if (on_server) { if (!server_start(server_address)) { ERR("Server failed to listen"); } } if (!wid_server_create_init()) { ERR("wid server create init"); } server_init_done = true; return (true); }
void music_play (const char *file, const char *alias, uint32_t rate) { int audio_format = MIX_DEFAULT_FORMAT; int audio_channels = 2; int audio_buffers = 4096; if (!music_init_done) { if (Mix_OpenAudio(rate, audio_format, audio_channels, audio_buffers) != 0) { MSG_BOX("Mix_OpenAudio fail: %s %s", Mix_GetError(), SDL_GetError()); SDL_ClearError(); } music_init_done = true; } musicp music = music_load(file, alias); music_update_volume(); static int sound_loaded; if (!sound_loaded) { sound_loaded = true; sound_load_all(); } if (HEADLESS) { return; } if (Mix_FadeInMusicPos(music->music, -1, 2000, 0) == -1) { // if (Mix_PlayMusic(music->music, -1) == -1) { WARN("cannot play music %s: %s", music->tree.key, Mix_GetError()); } }
uint8_t config_load (void) { char *file = dynprintf("%s", config_dir_and_file); demarshal_p ctx; /* * Default settings. */ global_config.video_pix_width = 0; global_config.video_pix_height = 0; global_config.sound_volume = 10; global_config.music_volume = 5; global_config.display_sync = 0; global_config.full_screen = 0; global_config.intro_screen = 1; global_config.fps_counter = 0; global_config.deathmatch = 0; global_config.deathmatch_monsters = 0; if (!global_config.server_name[0]) { strncpy(global_config.server_name, "unnamed-server", sizeof(global_config.server_name) - 1); } global_config.server_max_players = 4; global_config.server_port = SERVER_DEFAULT_PORT; if (!(ctx = demarshal(file))) { myfree(file); return (true); } if (!demarshal_config(ctx, &global_config)) { MSG_BOX("Failed to parse: %s", file); } myfree(file); demarshal_fini(ctx); return (true); }
static void wid_intro_settings_read (void) { memcpy(&old_game, &game, sizeof(old_game)); const char *cmp_str; char *val_str; int32_t val; /* * window. */ val_str = dynprintf("%dx%d", game.video_pix_width, game.video_pix_height); for (val = 0; val < WID_INTRO_MAX_VAL; val++) { cmp_str = wid_intro_button_value_string [WID_INTRO_SETTINGS_ROW_WINDOW][val]; if (!cmp_str) { continue; } if (!strcasecmp(val_str, cmp_str)) { break; } } if (val == WID_INTRO_MAX_VAL) { MSG_BOX("Window size %s was not found in known list", val_str); val = 0; } wid_intro_button_val[WID_INTRO_SETTINGS_ROW_WINDOW] = val; myfree(val_str); /* * sound_volume. */ val = wid_intro_button_val[WID_INTRO_SETTINGS_ROW_SOUND] = game.sound_volume; if ((val >= WID_INTRO_MAX_VAL) || (val < 0) || !wid_intro_button_value_string[WID_INTRO_SETTINGS_ROW_SOUND][val]) { wid_intro_button_val[WID_INTRO_SETTINGS_ROW_SOUND] = 0; MSG_BOX("Sound volume size %d was not found in known list", val); } /* * music_volume. */ val = wid_intro_button_val[WID_INTRO_SETTINGS_ROW_MUSIC] = game.music_volume; if ((val >= WID_INTRO_MAX_VAL) || (val < 0) || !wid_intro_button_value_string[WID_INTRO_SETTINGS_ROW_MUSIC][val]) { wid_intro_button_val[WID_INTRO_SETTINGS_ROW_MUSIC] = 0; MSG_BOX("Music volume %d was not found in known list", val); } /* * display_sync. */ #if 0 val = wid_intro_button_val[WID_INTRO_SETTINGS_ROW_DISPLAY_SYNC] = game.display_sync; #endif /* * full_screen. */ val = wid_intro_button_val[WID_INTRO_SETTINGS_ROW_FULL_SCREEN] = game.full_screen; /* * fps_counter. */ val = wid_intro_button_val[WID_INTRO_SETTINGS_ROW_FPS_COUNTER] = game.fps_counter; }
//------------------------------------------------------------------- plugin::plugin() : AudioEffectX(master, 0, 0) { MSG_BOX("new plugin: master=%p, &ceffect=%p", master, &cEffect); effect = this; }