From 9ed28fe3854bb36e2ae8d89befd4c3918d18bb4d Mon Sep 17 00:00:00 2001 From: div0 Date: Sat, 17 Nov 2007 10:48:26 +0000 Subject: [PATCH] fix divisions by zero git-svn-id: svn://svn.icculus.org/nexuiz/trunk@2978 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/common/mapinfo.qc | 4 +-- .../menu-div0test/item/modalcontroller.c | 7 +++-- data/qcsrc/menu-div0test/menu.qc | 27 ++++++++++-------- .../nexuiz/dialog_multiplayer_create.c | 6 ++-- .../dialog_multiplayer_create_mapinfo.c | 28 +++++++++---------- data/qcsrc/menu-div0test/nexuiz/serverlist.c | 7 +++-- 6 files changed, 44 insertions(+), 35 deletions(-) diff --git a/data/qcsrc/common/mapinfo.qc b/data/qcsrc/common/mapinfo.qc index 64235edbf..3106db36d 100644 --- a/data/qcsrc/common/mapinfo.qc +++ b/data/qcsrc/common/mapinfo.qc @@ -110,7 +110,7 @@ float MapInfo_FilterGametype(float pGametype, float pFeatures) } _MapInfo_filtered = strzone(_MapInfo_filtered); MapInfo_count = HugeSetOfIntegers_length(_MapInfo_filtered); - print("Filter ", ftos(pGametype), "/", ftos(pFeatures), " has ", ftos(MapInfo_count), "\n"); + //print("Filter ", ftos(pGametype), "/", ftos(pFeatures), " has ", ftos(MapInfo_count), "\n"); // TODO clear cache return 1; } @@ -242,7 +242,6 @@ float _MapInfo_Generate(string pFilename) // 0: failure, 1: ok ent, 2: ok bsp else { MapInfo_Map_supportedGametypes |= MAPINFO_TYPE_DEATHMATCH; // DM always works - MapInfo_Map_supportedGametypes |= MAPINFO_TYPE_RUNEMATCH; // Rune always works MapInfo_Map_supportedGametypes |= MAPINFO_TYPE_LMS; // LMS always works if(MapInfo_Map_spawnpoints >= 8 && MapInfo_Map_diameter > 4096) @@ -450,7 +449,6 @@ float MapInfo_CurrentFeatures() req = 0; if(!(cvar("g_instagib") || cvar("g_minstagib") || cvar("g_nixnex") || cvar("g_rocketarena"))) req |= MAPINFO_FEATURE_WEAPONS; - print(ftos(req), "\n"); return req; } diff --git a/data/qcsrc/menu-div0test/item/modalcontroller.c b/data/qcsrc/menu-div0test/item/modalcontroller.c index 9d3fcae44..8592afd9f 100644 --- a/data/qcsrc/menu-div0test/item/modalcontroller.c +++ b/data/qcsrc/menu-div0test/item/modalcontroller.c @@ -250,8 +250,11 @@ void showChildModalController(entity me, entity other, vector theOrigin, vector if(other.ModalController_state == 0 || skipAnimation) { me.setFocus(me, NULL); - other.ModalController_buttonOrigin = globalToBox(theOrigin, me.origin, me.size); - other.ModalController_buttonSize = globalToBoxSize(theSize, me.size); + if(!skipAnimation) + { + other.ModalController_buttonOrigin = globalToBox(theOrigin, me.origin, me.size); + other.ModalController_buttonSize = globalToBoxSize(theSize, me.size); + } me.switchState(me, other, 1, skipAnimation); } // zoom in from button (factor increases) } diff --git a/data/qcsrc/menu-div0test/menu.qc b/data/qcsrc/menu-div0test/menu.qc index f624efa75..bf8e4a642 100644 --- a/data/qcsrc/menu-div0test/menu.qc +++ b/data/qcsrc/menu-div0test/menu.qc @@ -159,19 +159,22 @@ void() m_draw = draw_reset(); draw_alpha *= menuAlpha; - vector dMouse; - dMouse = getmousepos(); - dMouse *= frametime / realFrametime; // for capturevideo - if(dMouse != '0 0 0') + if(frametime > 0) { - dMouse = globalToBoxSize(dMouse, draw_scale); - menuMousePos += dMouse * 1; // TODO use a cvar here - menuMousePos_x = bound(0, menuMousePos_x, 1); - menuMousePos_y = bound(0, menuMousePos_y, 1); - if(mouseButtonsPressed) - main.mouseDrag(main, menuMousePos); - else - main.mouseMove(main, menuMousePos); + vector dMouse; + dMouse = getmousepos(); + dMouse *= frametime / realFrametime; // for capturevideo + if(dMouse != '0 0 0') + { + dMouse = globalToBoxSize(dMouse, draw_scale); + menuMousePos += dMouse * 1; // TODO use a cvar here + menuMousePos_x = bound(0, menuMousePos_x, 1); + menuMousePos_y = bound(0, menuMousePos_y, 1); + if(mouseButtonsPressed) + main.mouseDrag(main, menuMousePos); + else + main.mouseMove(main, menuMousePos); + } } main.draw(main); draw_drawMousePointer(menuMousePos); diff --git a/data/qcsrc/menu-div0test/nexuiz/dialog_multiplayer_create.c b/data/qcsrc/menu-div0test/nexuiz/dialog_multiplayer_create.c index 2687817f4..a683cba32 100644 --- a/data/qcsrc/menu-div0test/nexuiz/dialog_multiplayer_create.c +++ b/data/qcsrc/menu-div0test/nexuiz/dialog_multiplayer_create.c @@ -30,8 +30,8 @@ void fillNexuizServerCreateTab(entity me) float n; me.TR(me); - n = 7 + 2 * !!cvar("developer"); - me.TD(me, 2, me.columns / n, e = makeNexuizGametypeButton(1, "g_dm", "Deathmatch")); + n = 8 + 2 * !!cvar("developer"); + me.TD(me, 2, me.columns / n, e = makeNexuizGametypeButton(1, "g_dm", "DM")); e0 = e; me.TD(me, 2, me.columns / n, e = makeNexuizGametypeButton(1, "g_tdm", "TDM")); if(e.checked) e0 = NULL; @@ -41,6 +41,8 @@ void fillNexuizServerCreateTab(entity me) if(e.checked) e0 = NULL; me.TD(me, 2, me.columns / n, e = makeNexuizGametypeButton(1, "g_runematch", "Rune")); if(e.checked) e0 = NULL; + me.TD(me, 2, me.columns / n, e = makeNexuizGametypeButton(1, "g_domination", "Dom")); + if(e.checked) e0 = NULL; me.TD(me, 2, me.columns / n, e = makeNexuizGametypeButton(1, "g_keyhunt", "Key Hunt")); if(e.checked) e0 = NULL; me.TD(me, 2, me.columns / n, e = makeNexuizGametypeButton(1, "g_ctf", "CTF")); diff --git a/data/qcsrc/menu-div0test/nexuiz/dialog_multiplayer_create_mapinfo.c b/data/qcsrc/menu-div0test/nexuiz/dialog_multiplayer_create_mapinfo.c index 7b784bbe6..83ffb1504 100644 --- a/data/qcsrc/menu-div0test/nexuiz/dialog_multiplayer_create_mapinfo.c +++ b/data/qcsrc/menu-div0test/nexuiz/dialog_multiplayer_create_mapinfo.c @@ -19,6 +19,7 @@ CLASS(NexuizMapInfoDialog) EXTENDS(NexuizDialog) ATTRIB(NexuizMapInfoDialog, typeLMSLabel, entity, NULL) ATTRIB(NexuizMapInfoDialog, typeArenaLabel, entity, NULL) ATTRIB(NexuizMapInfoDialog, typeRuneLabel, entity, NULL) + ATTRIB(NexuizMapInfoDialog, typeDominationLabel, entity, NULL) ATTRIB(NexuizMapInfoDialog, typeKeyHuntLabel, entity, NULL) ATTRIB(NexuizMapInfoDialog, typeCTFLabel, entity, NULL) ATTRIB(NexuizMapInfoDialog, typeAssaultLabel, entity, NULL) @@ -102,30 +103,29 @@ void fillNexuizMapInfoDialog(entity me) me.TR(me); me.TD(me, 1, 5.5, e = makeNexuizTextLabel(0, "Game types:")); me.TR(me); - me.TDempty(me, 1); - me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "Deathmatch")); + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "Deathmatch")); me.typeDeathmatchLabel = e; - me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "TDM")); + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "TDM")); me.typeTDMLabel = e; - me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "LMS")); + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "LMS")); me.typeLMSLabel = e; - me.TR(me); - me.TDempty(me, 1); - me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "Arena")); + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "Arena")); me.typeArenaLabel = e; - me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "Rune")); + me.TR(me); + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "Rune")); me.typeRuneLabel = e; - me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "Key Hunt")); + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "Domination")); + me.typeDominationLabel = e; + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "Key Hunt")); me.typeKeyHuntLabel = e; - me.TR(me); - me.TDempty(me, 1); - me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "CTF")); + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "CTF")); me.typeCTFLabel = e; + me.TR(me); if(cvar("developer")) { - me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "Assault")); + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "Assault")); me.typeAssaultLabel = e; - me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "Onslaught")); + me.TD(me, 1, 5.5/4, e = makeNexuizTextLabel(0, "Onslaught")); me.typeOnslaughtLabel = e; } diff --git a/data/qcsrc/menu-div0test/nexuiz/serverlist.c b/data/qcsrc/menu-div0test/nexuiz/serverlist.c index c9695384f..af552edb7 100644 --- a/data/qcsrc/menu-div0test/nexuiz/serverlist.c +++ b/data/qcsrc/menu-div0test/nexuiz/serverlist.c @@ -292,8 +292,11 @@ void resizeNotifyNexuizServerList(entity me, vector relOrigin, vector relSize, v float f; f = me.currentSortField; - me.currentSortField = -1; - me.setSortOrder(me, f, me.currentSortOrder); // force resetting the sort order + if(f >= 0) + { + me.currentSortField = -1; + me.setSortOrder(me, f, me.currentSortOrder); // force resetting the sort order + } } void ServerList_Connect_Click(entity btn, entity me) { -- 2.39.2