1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
/* Starshatter: The Open Source Project
Copyright (c) 2021-2024, Starshatter: The Open Source Project Contributors
Copyright (c) 2011-2012, Starshatter OpenSource Distribution Contributors
Copyright (c) 1997-2006, Destroyer Studios LLC.
AUTHOR: John DiCamillo
OVERVIEW
========
Package Callsign catalog class
*/
#include "Callsign.h"
// +----------------------------------------------------------------------+
static int callsign_index = -1;
static char civilian_catalog[32][16] = {
"Aleph", "Vehan", "Galvin", "Caleb",
"Mercury", "Lancet", "Hera", "Zeus",
"Odin", "Thor", "Nereus", "Klono",
"Athena", "Helios", "Leto", "Nivas",
"Selene", "Proteus", "Triton", "Thetis",
"Aurora", "Ceres", "Rana", "Doradus",
"Perseus", "Corina", "Cygnus", "Lago",
"Andil", "Galen", "Temas", "Dalan"
};
static char alliance_catalog[32][16] = {
"Alpha", "Bravo", "Delta", "Echo",
"Ranger", "Magic", "Falcon", "Omega",
"Vulcan", "Hammer", "Nomad", "Dragon",
"Sierra", "Tango", "Victor", "Zulu",
"Sentry", "Wolf", "Zeta", "Jackal",
"Merlin", "Eagle", "Blade", "Tiger",
"Raptor", "Ares", "Condor", "Rogue",
"Hornet", "Gold", "Mustang", "Voodoo"
};
static char hegemony_catalog[32][16] = {
"Nagal", "Nalak", "Olkar", "Kalar",
"Narom", "Tranor", "Orrin", "Orlak",
"Nardik", "Sorrin", "Amnar", "Kizek",
"Orten", "Ronar", "Molkar", "Ternal",
"Martak", "Komar", "Malik", "Morgul",
"Kliek", "Torlan", "Arvin", "Artak",
"Ralka", "Sernal", "Roten", "Reza",
"Tinet", "Aliek", "Salar", "Sona"
};
static char pirate_catalog[32][16] = {
"Raider", "Skull", "Black", "Blood",
"Roger", "Hook", "Galleon", "Privateer",
"Cutlass", "Sabre", "Pike", "Blackbeard",
"Pistol", "Cortez", "Pirate", "Buccaneer",
"Raider", "Skull", "Black", "Blood",
"Morgan", "Redbeard", "Cutlass", "Sabre",
"Iron", "Stocks", "Quarter", "Gray",
"Ruby", "Cross", "Pirate", "Raider"
};
static char zolon_catalog[32][16] = {
"Cancer", "Krill", "Bluefin", "Scylla",
"Charybdis","Finback", "Mantis", "Skate",
"Sealion", "Lamprey", "Tarpon", "Hammerhead",
"Orca", "Skipjack", "Sculpin", "Thresher",
"Devilray", "Chinook", "Moray", "Seastar",
"Heron", "Puffin", "Rockeye", "Tiburon",
"Coho", "Stingray", "Mako", "Conger",
"Scad", "Pompano", "Tusk", "Nautilus"
};
// +----------------------------------------------------------------------+
const char*
Callsign::GetCallsign(int IFF)
{
if (callsign_index < 0)
callsign_index = rand()/1000;
if (callsign_index > 31)
callsign_index = 0;
switch (IFF) {
case 0: return civilian_catalog[callsign_index++];
default:
case 1: return alliance_catalog[callsign_index++];
case 2: return hegemony_catalog[callsign_index++];
case 3: return pirate_catalog[callsign_index++];
case 4: return zolon_catalog[callsign_index++];
}
}
|