Ejemplo n.º 1
0
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;
}
Ejemplo n.º 2
0
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);
}
Ejemplo n.º 3
0
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);
	}
}
Ejemplo n.º 4
0
//-------------------------------------------------------------------
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);
}
Ejemplo n.º 5
0
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];
}
Ejemplo n.º 6
0
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);
}
Ejemplo n.º 7
0
CNpc* CNpc::Create(LPDIRECT3DDEVICE9 pGraphicDev)
{
	CNpc*		pGameObject = new CNpc(pGraphicDev);

	if (FAILED(pGameObject->Initialize()))
	{
		MSG_BOX("CMonster Create Faild");
		::Safe_Release(pGameObject);
	}
	return pGameObject;
}
Ejemplo n.º 8
0
CTimer* CTimer::Create(void)
{
	CTimer*		pTimer = new CTimer;

	if(FAILED(pTimer->Init_Timer()))
	{
		MSG_BOX("CTimer Create Failed");
		Engine::Safe_Release(pTimer);	
	}

	return pTimer;
}
Ejemplo n.º 9
0
CMainApp* CMainApp::Create(void)
{
	CMainApp*		pMainApp = new CMainApp;

	if(FAILED(pMainApp->Initialize()))
	{
		MSG_BOX("CMainApp Create Failed");
		::Safe_Release(pMainApp);
	}

	return pMainApp;
}
Ejemplo n.º 10
0
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;
}
Ejemplo n.º 11
0
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;
}
Ejemplo n.º 12
0
//-------------------------------------------------------------------
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;
}
Ejemplo n.º 13
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);
}
Ejemplo n.º 14
0
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());
    }
}
Ejemplo n.º 15
0
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);
}
Ejemplo n.º 16
0
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;
}
Ejemplo n.º 17
0
//-------------------------------------------------------------------
plugin::plugin() : AudioEffectX(master, 0, 0)
{
  MSG_BOX("new plugin: master=%p, &ceffect=%p", master, &cEffect);
  
  effect = this;
}