Maelstrom: The alien ship is actually named "Shenobi"

From 6d63d6506fa4fb1279087779e7514427f9601077 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Wed, 18 Mar 2026 22:00:34 -0700
Subject: [PATCH] The alien ship is actually named "Shenobi"

---
 CMakeLists.txt                            |  2 +-
 Docs/Maelstrom-Announce                   | 12 ++++++------
 Xcode/Maelstrom.xcodeproj/project.pbxproj |  4 ++--
 game/make.cpp                             |  6 +++---
 game/objects.h                            |  2 +-
 game/player.cpp                           |  2 +-
 game/{shinobi.h => shenobi.h}             | 14 +++++++-------
 7 files changed, 21 insertions(+), 21 deletions(-)
 rename game/{shinobi.h => shenobi.h} (95%)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index aef893cb..301e5ee5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -81,7 +81,7 @@ set(MAELSTROM_SOURCES
 	game/replay.h
 	game/scores.cpp
 	game/scores.h
-	game/shinobi.h
+	game/shenobi.h
 	game/steam.cpp
 	game/steam.h
 
diff --git a/Docs/Maelstrom-Announce b/Docs/Maelstrom-Announce
index c427b316..9d5c3f78 100644
--- a/Docs/Maelstrom-Announce
+++ b/Docs/Maelstrom-Announce
@@ -8,19 +8,19 @@ Hey folks, Check it out!
 
 	You pilot your ship through the dreaded "Maelstrom" asteroid
 belt -- suddenly your best friend thrusts towards you and fires, directly
-at your cockpit.  You raise your shields just in time, and the battle is
-joined.  The deadliest stretch of space known to mankind has just gotten
-deadlier.  Everywhere massive asteroids jostle for a chance to crush your
-ship, and deadly shinobi fighter patrols persue you across the asteroid belt.
+at your cockpit. You raise your shields just in time, and the battle is
+joined. The deadliest stretch of space known to mankind has just gotten
+deadlier. Everywhere massive asteroids jostle for a chance to crush your
+ship, and deadly shenobi fighter patrols persue you across the asteroid belt.
 But the deadliest of them all is your sister ship, assigned to you on patrol.
 The pilot, trained by your own Navy, battle hardened by months in the
 Maelstrom, is equipped with a twin of your own ship and intimate knowledge
-of your tactics.  The lovely Stratocaster R&R facility never sounded so good,
+of your tactics. The lovely Stratocaster R&R facility never sounded so good,
 but as you fire full thrusters to dodge the latest barrage you begin to think
 you'll never get home...
 
 	This is a port of the high resolution "asteriods" style arcade
-game written by Andrew Welch for the Macintosh.  It is now freely supported
+game written by Andrew Welch for the Macintosh. It is now freely supported
 with additional network play on the Linux platform, courtesy of Sam Lantinga
 (slouken@devolution.com).
 
diff --git a/Xcode/Maelstrom.xcodeproj/project.pbxproj b/Xcode/Maelstrom.xcodeproj/project.pbxproj
index 781a5e04..db81827e 100644
--- a/Xcode/Maelstrom.xcodeproj/project.pbxproj
+++ b/Xcode/Maelstrom.xcodeproj/project.pbxproj
@@ -136,7 +136,7 @@
 		AA928DE12EDB9CA60005200A /* replay.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = replay.cpp; sourceTree = "<group>"; };
 		AA928DE22EDB9CA60005200A /* scores.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = scores.h; sourceTree = "<group>"; };
 		AA928DE32EDB9CA60005200A /* scores.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = scores.cpp; sourceTree = "<group>"; };
-		AA928DE42EDB9CA60005200A /* shinobi.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = shinobi.h; sourceTree = "<group>"; };
+		AA928DE42EDB9CA60005200A /* shenobi.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = shenobi.h; sourceTree = "<group>"; };
 		AA928DFC2EDB9CEA0005200A /* array.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = array.h; sourceTree = "<group>"; };
 		AA928DFD2EDB9CEA0005200A /* ErrorBase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ErrorBase.h; sourceTree = "<group>"; };
 		AA928DFE2EDB9CEA0005200A /* files.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = files.h; sourceTree = "<group>"; };
@@ -304,7 +304,7 @@
 				AA928DE12EDB9CA60005200A /* replay.cpp */,
 				AA928DE22EDB9CA60005200A /* scores.h */,
 				AA928DE32EDB9CA60005200A /* scores.cpp */,
-				AA928DE42EDB9CA60005200A /* shinobi.h */,
+				AA928DE42EDB9CA60005200A /* shenobi.h */,
 				F3CC41402F60E6A10033BDFA /* steam.h */,
 				F3CC41412F60E6A10033BDFA /* steam.cpp */,
 			);
diff --git a/game/make.cpp b/game/make.cpp
index 79715c7a..da2f03da 100644
--- a/game/make.cpp
+++ b/game/make.cpp
@@ -26,7 +26,7 @@
 #include "object.h"
 #include "player.h"
 #include "objects.h"
-#include "shinobi.h"
+#include "shenobi.h"
 
 
 /* ----------------------------------------------------------------- */
@@ -42,9 +42,9 @@ void MakeEnemy(void)
 
 	newsprite = gNumSprites;
 	if (FastRandom(5 + gWave) > 10)
-		gSprites[newsprite] = new LittleShinobi(x, y);
+		gSprites[newsprite] = new LittleShenobi(x, y);
 	else
-		gSprites[newsprite] = new BigShinobi(x, y);
+		gSprites[newsprite] = new BigShenobi(x, y);
 
 	SetSteamTimelineEvent(STEAM_TIMELINE_EVENT_ENEMY);
 }	/* -- MakeEnemy */
diff --git a/game/objects.h b/game/objects.h
index e0b1771a..aa92d3d8 100644
--- a/game/objects.h
+++ b/game/objects.h
@@ -374,7 +374,7 @@ class Homing : public Object {
 	Homing(int X, int Y, int xVel, int yVel);
 	~Homing() { }
 
-	/* This is duplicated in the Shinobi class */
+	/* This is duplicated in the Shenobi class */
 	virtual int AcquireTarget(void) {
 		int targets[MAX_PLAYERS];
 		int numTargets = 0;
diff --git a/game/player.cpp b/game/player.cpp
index 7746b136..a9b4e9a6 100644
--- a/game/player.cpp
+++ b/game/player.cpp
@@ -794,7 +794,7 @@ Player::KillShot(int index)
 	OBJ_KILL(shots, index, numshots, Shot);
 }
 
-/* The Shot sprites for the Shinobi and Player */
+/* The Shot sprites for the Shenobi and Player */
 
 UITexture *gPlayerShot;
 UITexture *gEnemyShot;
diff --git a/game/shinobi.h b/game/shenobi.h
similarity index 95%
rename from game/shinobi.h
rename to game/shenobi.h
index 6f05775d..ceb19e2d 100644
--- a/game/shinobi.h
+++ b/game/shenobi.h
@@ -21,10 +21,10 @@
 
 /* Da da da dum, the ENEMY */
 
-class Shinobi : public Object {
+class Shenobi : public Object {
 
 public:
-	Shinobi(int X, int Y, Blit *blit, int ShotOdds) :
+	Shenobi(int X, int Y, Blit *blit, int ShotOdds) :
 					Object(X, Y, 0, 0, blit, 1) {
 		Set_Points(ENEMY_PTS);
 		Set_HitPoints(ENEMY_HITS);
@@ -42,7 +42,7 @@ class Shinobi : public Object {
 		gEnemySprite = this;
 		sound->PlaySound(gEnemyAppears, 4);
 	}
-	~Shinobi() {
+	~Shenobi() {
 		for ( int i=0; i<MAX_SHOTS; ++i )
 			delete shots[i];
 		gEnemySprite = NULL;
@@ -268,17 +268,17 @@ class Shinobi : public Object {
 };
 
 
-class BigShinobi : public Shinobi {
+class BigShenobi : public Shenobi {
 
 public:
-	BigShinobi(int X, int Y) : Shinobi(X, Y, gEnemyShip, 30) {
+	BigShenobi(int X, int Y) : Shenobi(X, Y, gEnemyShip, 30) {
 	}
 };
 
-class LittleShinobi : public Shinobi {
+class LittleShenobi : public Shenobi {
 
 public:
-	LittleShinobi(int X, int Y) : Shinobi(X, Y, gEnemyShip2, 15) {
+	LittleShenobi(int X, int Y) : Shenobi(X, Y, gEnemyShip2, 15) {
 	}
 
 	virtual void IncrFrags(void) {