{
switch (tag) {
case 'a': //ascii
- if (value && !strcasecmp(value, "0")) Sets.ascii = 0;
- else Sets.ascii = 1;
+ Sets.ascii = value && !strcasecmp(value, "0") ? 0 : 1;
Sets.drawstyle &= ~Sets.ascii;
break;
case 'c': //connect
Players[0].team = atoi(value);
break;
case 'd': //dropmode
- Sets.dropmode = atoi(value);
+ Sets.dropmode = value ? atoi(value) : 1;
break;
case 'C': //color
- if (value && !strcasecmp(value, "1")) Sets.color = 1;
- else Sets.color = 0;
+ Sets.color = value && strcasecmp(value, "0") ? 1 : 0;
break;
case 'S': //slowterm
- if (value && !strcasecmp(value, "1")) Sets.standout = 1;
- else Sets.standout = 0;
+ Sets.standout = value && !strcasecmp(value, "0") ? 1 : 0;
break;
case 'k': //keys
MapKeys(value);
// global actions (always possible, even if not playing)
switch (key) {
+ case KT_redraw:
+ clear();
+ InitFields();
+// ScheduleFullRedraw();
+ refresh();
+ return;
case KT_say:
chatMode = 1;
Messagetype(key, strlen(chatText) - 1, chatText);
- break;
+ return;
+ case KT_quit:
+ ShowPause(me);
+ refresh();
+ gameStatus = 0;
+ return;
}
- if (Players[me].alive <= 0 && key != KT_quit) return;
- if (paused && key < KT_pause) return;
+ if (Players[me].alive <= 0) return;
+ // actions available while in game
+ switch (key) {
+ case KT_pause:
+ Players[me].flags ^= SCF_paused;
+ if (Game.started > 1)
+ Message(Players[me].flags & SCF_paused
+ ? "You paused the game" : "You unpaused the game");
+ else
+ Message(Players[me].flags & SCF_paused
+ ? "You are not ready" : "You are ready");
+ checkPaused();
+ if (game == GT_classicTwo)
+ SendPacket(me, NP_pause, 0, NULL);
+ ShowPause(me);
+ changed = 1;
+ return;
+ }
+
+ if (paused) return;
+ // actions only available while actually playing
switch (key) {
case KT_left:
if (MovePiece(me, 0, -1) && spied) SendPacket(me, NP_left, 0, NULL);
ShowScore(me, Players[me].score);
changed = 1;
break;
- case KT_pause:
- Players[me].flags ^= SCF_paused;
- if (Game.started > 1)
- Message(Players[me].flags & SCF_paused
- ? "You paused the game" : "You unpaused the game");
- else
- Message(Players[me].flags & SCF_paused
- ? "You are not ready" : "You are ready");
- checkPaused();
- if (game == GT_classicTwo)
- SendPacket(me, NP_pause, 0, NULL);
- ShowPause(me);
- changed = 1;
- break;
- case KT_redraw:
- clear();
- InitFields();
-// ScheduleFullRedraw();
- refresh();
- break;
- case KT_quit:
- ShowPause(me);
- refresh();
- gameStatus = 0;
- break;
- } //E_key
+ }
+
if (dropMode && DropPiece(me) > 0) {
SetITimer(Game.speed, Game.speed);
if (spied) SendPacket(me, NP_drop, 0, NULL);