Change license from 3-clause BSD to 2-clause BSD and add SPDX tags.
[wumpus.git] / superhack.c
index c5461a1ff7f3fae5ff1c84a46be6073c55fc1c46..2a245bdaac5814a19953f16a1906403021737b11 100644 (file)
@@ -8,6 +8,8 @@
  *
  * Any resemblance to persons living or dead is strictly coincidental.  And
  * if you believe *that*...
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
  */
 
 #include <stdio.h>
@@ -22,6 +24,7 @@ static int path[5];
 static int j, k, scratchloc, pies;
 static char inp[BUFSIZ];               /* common input buffer */
 
+#define NUMBERS "0123456789"
 #define YOU    0
 #define RMS    1
 #define STARLET1       2
@@ -226,8 +229,9 @@ void throw()
     extern void check_shot(), move_superhack();
     int        j9;
 
-    j9 = sscanf(inp + isalpha(inp[0]), "%d %d %d %d %d",
+    j9 = sscanf(inp + strcspn(inp, NUMBERS), "%d %d %d %d %d",
                    &path[0], &path[1], &path[2], &path[3], &path[4]);
+
     if (j9 < 1)
     {
        PM("Sorry, I didn't see any room numbers after your throw command.");
@@ -312,7 +316,7 @@ void move_superhack()
 
 void move()
 {
-    if (sscanf(inp + isalpha(inp[0]), "%d", &scratchloc) < 1)
+    if (sscanf(inp + strcspn(inp, NUMBERS), "%d", &scratchloc) < 1)
     {
        PM("Sorry, I didn't see a room number after your `m' command.");
        return;