diff -r -c xpilot-4.1.0_orig/src/common/rules.h xpilot-4.1.0_statics/src/common/rules.h *** xpilot-4.1.0_orig/src/common/rules.h Tue May 25 14:29:06 1999 --- xpilot-4.1.0_statics/src/common/rules.h Sat May 29 00:24:10 1999 *************** *** 42,47 **** --- 42,48 ---- #define ALLOW_CLUSTERS (1<<11) #define ALLOW_MODIFIERS (1<<12) #define ALLOW_LASER_MODIFIERS (1<<13) + #define ALLOW_STATIC_MINES (1<<14) /* * Client uses only a subset of them: */ diff -r -c xpilot-4.1.0_orig/src/server/cmdline.c xpilot-4.1.0_statics/src/server/cmdline.c *** xpilot-4.1.0_orig/src/server/cmdline.c Tue May 25 14:29:15 1999 --- xpilot-4.1.0_statics/src/server/cmdline.c Sat May 29 00:53:36 1999 *************** *** 185,190 **** --- 185,191 ---- bool allowClusters; bool allowModifiers; bool allowLaserModifiers; + bool allowStaticMines; bool allowShipShapes; bool playersOnRadar; /* Are players visible on radar? */ *************** *** 1204,1209 **** --- 1205,1219 ---- valBool, tuner_none, "Can lasers be modified to be a different weapon?\n" + }, + { + "allowStaticMines", + "staticMines", + "True", + &allowStaticMines, + valBool, + tuner_none, + "Are static (or very slow moving) mines allowed?\n" }, { "allowShipShapes", diff -r -c xpilot-4.1.0_orig/src/server/event.c xpilot-4.1.0_statics/src/server/event.c *** xpilot-4.1.0_orig/src/server/event.c Thu May 27 18:32:45 1999 --- xpilot-4.1.0_statics/src/server/event.c Sat May 29 00:26:34 1999 *************** *** 739,745 **** break; case KEY_DROP_MINE: ! Place_mine(ind); break; case KEY_DETACH_MINE: --- 739,747 ---- break; case KEY_DROP_MINE: ! if (BIT(World.rules->mode, ALLOW_STATIC_MINES)) { ! Place_mine(ind); ! } break; case KEY_DETACH_MINE: diff -r -c xpilot-4.1.0_orig/src/server/global.h xpilot-4.1.0_statics/src/server/global.h *** xpilot-4.1.0_orig/src/server/global.h Tue May 25 14:29:16 1999 --- xpilot-4.1.0_statics/src/server/global.h Sat May 29 00:24:35 1999 *************** *** 184,189 **** --- 184,190 ---- extern bool allowClusters; extern bool allowModifiers; extern bool allowLaserModifiers; + extern bool allowStaticMines; extern bool allowShipShapes; extern bool shieldedItemPickup; diff -r -c xpilot-4.1.0_orig/src/server/play.c xpilot-4.1.0_statics/src/server/play.c *** xpilot-4.1.0_orig/src/server/play.c Tue May 25 14:29:17 1999 --- xpilot-4.1.0_statics/src/server/play.c Sat May 29 00:44:35 1999 *************** *** 735,742 **** || (BIT(pl->used, OBJ_SHIELD|OBJ_PHASING_DEVICE) && !shieldedMining)) return; ! Place_general_mine(ind, pl->team, GRAVITY, ! pl->pos.x, pl->pos.y, pl->vel.x, pl->vel.y, pl->mods); } void Place_general_mine(int ind, u_short team, long status, DFLOAT x, DFLOAT y, --- 735,744 ---- || (BIT(pl->used, OBJ_SHIELD|OBJ_PHASING_DEVICE) && !shieldedMining)) return; ! if (pl->velocity > 5 || BIT(World.rules->mode, ALLOW_STATIC_MINES)) { ! Place_general_mine(ind, pl->team, GRAVITY, pl->pos.x, ! pl->pos.y, pl->vel.x, pl->vel.y, pl->mods); ! } } void Place_general_mine(int ind, u_short team, long status, DFLOAT x, DFLOAT y, diff -r -c xpilot-4.1.0_orig/src/server/rules.c xpilot-4.1.0_statics/src/server/rules.c *** xpilot-4.1.0_orig/src/server/rules.c Tue May 25 14:29:17 1999 --- xpilot-4.1.0_statics/src/server/rules.c Sat May 29 00:24:23 1999 *************** *** 300,305 **** --- 300,306 ---- | (allowClusters ? ALLOW_CLUSTERS : 0) | (allowModifiers ? ALLOW_MODIFIERS : 0) | (allowLaserModifiers ? ALLOW_LASER_MODIFIERS : 0) + | (allowStaticMines ? ALLOW_STATIC_MINES : 0) | (edgeWrap ? WRAP_PLAY : 0)); rules.lives = worldLives; World.rules = &rules;