118699Sedward /* 221235Sdist * Copyright (c) 1983 Regents of the University of California. 3*33695Sbostic * All rights reserved. 4*33695Sbostic * 5*33695Sbostic * Redistribution and use in source and binary forms are permitted 6*33695Sbostic * provided that this notice is preserved and that due credit is given 7*33695Sbostic * to the University of California at Berkeley. The name of the University 8*33695Sbostic * may not be used to endorse or promote products derived from this 9*33695Sbostic * software without specific prior written permission. This software 10*33695Sbostic * is provided ``as is'' without express or implied warranty. 1118699Sedward */ 1218699Sedward 1311593Sleres #ifndef lint 14*33695Sbostic static char sccsid[] = "@(#)globals.c 5.2 (Berkeley) 03/09/88"; 15*33695Sbostic #endif /* not lint */ 1615171Sedward 1712629Sedward #include "externs.h" 1811593Sleres 1914014Sedward struct scenario scene[] = { 2014014Sedward /* 2114014Sedward * int winddir; 2214014Sedward * int windspeed; 2314014Sedward * int windchange; 2414014Sedward * int vessels; 2514014Sedward * char *name; 2614014Sedward * struct ship ship[NSHIP]; 2714014Sedward */ 2815203Sedward 5, 3, 5, 2, "Ranger vs. Drake", 2911593Sleres { 3015171Sedward { "Ranger", specs+0, N_A, 7, 20, 4, 0 }, 3115171Sedward { "Drake", specs+1, N_B, 7, 31, 5, 0 } 3211593Sleres }, 3315203Sedward 1, 3, 6, 2, "The Battle of Flamborough Head", 3411593Sleres { 3515171Sedward { "Bonhomme Rich", specs+2, N_A, 13, 40, 2, 0 }, 3615171Sedward { "Serapis", specs+3, N_B, 2, 42, 2, 0 } 3711593Sleres }, 3815203Sedward 5, 5, 5, 10, "Arbuthnot and Des Touches", 3911593Sleres { 4015171Sedward { "America", specs+4, N_B, 7, 37, 4, 0 }, 4115171Sedward { "Befford", specs+5, N_B, 5, 35, 4, 0 }, 4215171Sedward { "Adamant", specs+6, N_B, 3, 33, 4, 0 }, 4315171Sedward { "London", specs+7, N_B, 1, 31, 4, 0 }, 4415171Sedward { "Royal Oak", specs+8, N_B, -1, 29, 4, 0 }, 4515171Sedward { "Neptune", specs+9, N_F, 6, 44, 4, 0 }, 4615171Sedward { "Duc Bougogne", specs+10, N_F, 8, 46, 4, 0 }, 4715171Sedward { "Conquerant", specs+48, N_F, 10, 48, 4, 0 }, 4815171Sedward { "Provence", specs+11, N_F, 12, 50, 4, 0 }, 4915171Sedward { "Romulus", specs+12, N_F, 20, 58, 4, 0 } 5011593Sleres }, 5115203Sedward 1, 3, 5, 10, "Suffren and Hughes", 5211593Sleres { 5315171Sedward { "Monmouth", specs+52, N_B, 9, 45, 2, 0 }, 5415171Sedward { "Hero", specs+5, N_B, 13, 49, 2, 0 }, 5515171Sedward { "Isis", specs+6, N_B, 12, 48, 2, 0 }, 5615171Sedward { "Superb", specs+50, N_B, 10, 46, 2, 0 }, 5715171Sedward { "Burford", specs+48, N_B, 11, 47, 2, 0 }, 5815171Sedward { "Flamband", specs+13, N_F, 7, 59, 4, 0 }, 5915171Sedward { "Annibal", specs+9, N_F, 4, 56, 4, 0 }, 6015171Sedward { "Severe", specs+11, N_F, 2, 54, 4, 0 }, 6115171Sedward { "Brilliant", specs+49, N_F, -1, 51, 4, 0 }, 6215171Sedward { "Sphinx", specs+51, N_F, -5, 47, 4, 0 } 6311593Sleres }, 6415203Sedward 1, 3, 4, 2, "Nymphe vs. Cleopatre", 6511593Sleres { 6615171Sedward { "Nymphe", specs+14, N_B, 13, 30, 2, 0 }, 6715171Sedward { "Cleopatre", specs+15, N_F, 3, 41, 2, 0 } 6811593Sleres }, 6915203Sedward 1, 3, 5, 2, "Mars vs. Hercule", 7011593Sleres { 7115171Sedward { "Mars", specs+16, N_B, 13, 30, 2, 0 }, 7215171Sedward { "Hercule", specs+17, N_F, 3, 41, 2, 0 } 7311593Sleres }, 7415203Sedward 5, 3, 5, 2, "Ambuscade vs. Baionnaise", 7511593Sleres { 7615171Sedward { "Ambuscade", specs+18, N_B, 13, 30, 2, 0 }, 7715171Sedward { "Baionnaise", specs+19, N_F, 3, 41, 2, 0 } 7811593Sleres }, 7915203Sedward 1, 5, 6, 2, "Constellation vs. Insurgent", 8011593Sleres { 8115171Sedward { "Constellation", specs+20, N_A, 9, 50, 8, 0 }, 8215171Sedward { "Insurgent", specs+22, N_F, 4, 24, 2, 0 } 8311593Sleres }, 8415203Sedward 1, 3, 5, 2, "Constellation vs. Vengeance", 8511593Sleres { 8615171Sedward { "Constellation", specs+20, N_A, 12, 40, 2, 0 }, 8715171Sedward { "Vengeance", specs+21, N_F, 1, 43, 2, 0 } 8811593Sleres }, 8915203Sedward 1, 3, 6, 10, "The Battle of Lissa", 9011593Sleres { 9115171Sedward { "Amphion", specs+23, N_B, 8, 50, 4, 0 }, 9215171Sedward { "Active", specs+24, N_B, 6, 48, 4, 0 }, 9315171Sedward { "Volage", specs+25, N_B, 4, 46, 4, 0 }, 9415171Sedward { "Cerberus", specs+26, N_B, 2, 44, 4, 0 }, 9515171Sedward { "Favorite", specs+27, N_F, 9, 34, 2, 0 }, 9615171Sedward { "Flore", specs+21, N_F, 13, 39, 2, 0 }, 9715171Sedward { "Danae", specs+64, N_F, 15, 37, 2, 0 }, 9815171Sedward { "Bellona", specs+28, N_F, 17, 35, 2, 0 }, 9915171Sedward { "Corona", specs+29, N_F, 12, 31, 2, 0 }, 10015171Sedward { "Carolina", specs+30, N_F, 15, 28, 2, 0 } 10111593Sleres }, 10215203Sedward 2, 5, 6, 2, "Constitution vs. Guerriere", 10311593Sleres { 10415171Sedward { "Constitution", specs+31, N_A, 7, 35, 1, 0 }, 10515171Sedward { "Guerriere", specs+32, N_B, 7, 47, 4, 0 } 10611593Sleres }, 10715203Sedward 1, 3, 5, 2, "United States vs. Macedonian", 10811593Sleres { 10915171Sedward { "United States", specs+33, N_A, 1, 52, 6, 0 }, 11015171Sedward { "Macedonian", specs+34, N_B, 14, 40, 1, 0 } 11111593Sleres }, 11215203Sedward 1, 3, 6, 2, "Constitution vs. Java", 11311593Sleres { 11415171Sedward { "Constitution", specs+31, N_A, 1, 40, 2, 0 }, 11515171Sedward { "Java", specs+35, N_B, 11, 40, 2, 0 } 11611593Sleres }, 11715203Sedward 1, 3, 5, 2, "Chesapeake vs. Shannon", 11811593Sleres { 11915171Sedward { "Chesapeake", specs+36, N_A, 13, 40, 2, 0 }, 12015171Sedward { "Shannon", specs+37, N_B, 1, 42, 2, 0 } 12111593Sleres }, 12215203Sedward 1, 1, 6, 5, "The Battle of Lake Erie", 12311593Sleres { 12415171Sedward { "Lawrence", specs+38, N_A, 4, 55, 8, 0 }, 12515171Sedward { "Niagara", specs+42, N_A, 7, 61, 8, 0 }, 12615171Sedward { "Lady Prevost", specs+39, N_B, 4, 25, 2, 0 }, 12715171Sedward { "Detroit", specs+40, N_B, 7, 22, 2, 0 }, 12815171Sedward { "Q. Charlotte", specs+41, N_B, 10, 19, 2, 0 } 12911593Sleres }, 13015203Sedward 1, 1, 5, 2, "Wasp vs. Reindeer", 13111593Sleres { 13215171Sedward { "Wasp", specs+42, N_A, 3, 41, 2, 0 }, 13315171Sedward { "Reindeer", specs+43, N_B, 10, 48, 2, 0 } 13411593Sleres }, 13515203Sedward 1, 2, 5, 3, "Constitution vs. Cyane and Levant", 13611593Sleres { 13715171Sedward { "Constitution", specs+31, N_A, 10, 45, 2, 0 }, 13815171Sedward { "Cyane", specs+44, N_B, 3, 37, 2, 0 }, 13915171Sedward { "Levant", specs+45, N_B, 5, 35, 2, 0 } 14011593Sleres }, 14115203Sedward 5, 5, 5, 3, "Pellew vs. Droits de L'Homme", 14211593Sleres { 14315171Sedward { "Indefatigable", specs+46, N_B, 12, 45, 6, 0 }, 14415171Sedward { "Amazon", specs+47, N_B, 9, 48, 6, 0 }, 14515171Sedward { "Droits L'Hom", specs+48, N_F, 3, 28, 5, 0 } 14611593Sleres }, 14715203Sedward 2, 2, 3, 10, "Algeciras", 14811593Sleres { 14915171Sedward { "Caesar", specs+49, N_B, 7, 70, 6, 0 }, 15015171Sedward { "Pompee", specs+50, N_B, 5, 72, 6, 0 }, 15115171Sedward { "Spencer", specs+5, N_B, 3, 74, 6, 0 }, 15215171Sedward { "Hannibal", specs+7, N_B, 1, 76, 6, 0 }, 15315171Sedward { "Real-Carlos", specs+53, N_S, 9, 20, 3, 0 }, 15415171Sedward { "San Fernando", specs+54, N_S, 11, 16, 3, 0 }, 15515171Sedward { "Argonauta", specs+55, N_S, 10, 14, 4, 0 }, 15615171Sedward { "San Augustine", specs+56, N_S, 6, 22, 4, 0 }, 15715171Sedward { "Indomptable", specs+51, N_F, 7, 23, 5, 0 }, 15815171Sedward { "Desaix", specs+52, N_F, 7, 27, 7, 0 } 15911593Sleres }, 16015203Sedward 5, 3, 6, 7, "Lake Champlain", 16111593Sleres { 16215171Sedward { "Saratoga", specs+60, N_A, 8, 10, 1, 0 }, 16315171Sedward { "Eagle", specs+61, N_A, 9, 13, 2, 0 }, 16415171Sedward { "Ticonderoga", specs+62, N_A, 12, 17, 3, 0 }, 16515171Sedward { "Preble", specs+63, N_A, 14, 20, 2, 0 }, 16615171Sedward { "Confiance", specs+57, N_B, 4, 70, 6, 0 }, 16715171Sedward { "Linnet", specs+58, N_B, 7, 68, 6, 0 }, 16815171Sedward { "Chubb", specs+59, N_B, 10, 65, 6, 0 } 16911593Sleres }, 17015203Sedward 5, 3, 6, 4, "Last Voyage of the USS President", 17111593Sleres { 17215171Sedward { "President", specs+67, N_A, 12, 42, 5, 0 }, 17315171Sedward { "Endymion", specs+64, N_B, 5, 42, 5, 0 }, 17415171Sedward { "Pomone", specs+65, N_B, 7, 82, 6, 0 }, 17515171Sedward { "Tenedos", specs+66, N_B, 7, -1, 4, 0 } 17611593Sleres }, 17715203Sedward 7, 5, 5, 2, "Hornblower and the Natividad", 17811593Sleres { 17915171Sedward { "Lydia", specs+68, N_B, 12, 40, 2, 0 }, 18015171Sedward { "Natividad", specs+69, N_S, 2, 40, 4, 0 } 18111593Sleres }, 18215203Sedward 1, 3, 6, 2, "Curse of the Flying Dutchman", 18311593Sleres { 18415171Sedward { "Piece of Cake", specs+19, N_S, 7, 40, 2, 0 }, 18515171Sedward { "Flying Dutchy", specs+71, N_F, 7, 41, 1, 0 } 18611593Sleres }, 18715203Sedward 1, 4, 1, 4, "The South Pacific", 18811593Sleres { 18915171Sedward { "USS Scurvy", specs+70, N_A, 7, 40, 1, 0 }, 19015171Sedward { "HMS Tahiti", specs+71, N_B, 12, 60, 1, 0 }, 19115171Sedward { "Australian", specs+18, N_S, 5, 20, 8, 0 }, 19215171Sedward { "Bikini Atoll", specs+63, N_F, 2, 60, 4, 0 } 19311593Sleres }, 19415203Sedward 7, 3, 6, 5, "Hornblower and the battle of Rosas bay", 19511593Sleres { 19615171Sedward { "Sutherland", specs+5, N_B, 13, 30, 2, 0 }, 19715171Sedward { "Turenne", specs+10, N_F, 9, 35, 6, 0 }, 19815171Sedward { "Nightmare", specs+9, N_F, 7, 37, 6, 0 }, 19915171Sedward { "Paris", specs+53, N_F, 3, 45, 4, 0 }, 20015171Sedward { "Napolean", specs+56, N_F, 1, 40, 6, 0 } 20111593Sleres }, 20215203Sedward 6, 4, 7, 5, "Cape Horn", 20311593Sleres { 20415171Sedward { "Concord", specs+51, N_A, 3, 20, 4, 0 }, 20515171Sedward { "Berkeley", specs+7, N_A, 5, 50, 5, 0 }, 20615171Sedward { "Thames", specs+71, N_B, 10, 40, 1, 0 }, 20715171Sedward { "Madrid", specs+53, N_S, 13, 60, 8, 0 }, 20815171Sedward { "Musket", specs+10, N_F, 10, 60, 7, 0 } 20911593Sleres }, 21015203Sedward 8, 3, 7, 3, "New Orleans", 21111593Sleres { 21215171Sedward { "Alligator", specs+71, N_A, 13, 5, 1, 0 }, 21315171Sedward { "Firefly", specs+50, N_B, 10, 20, 8, 0 }, 21415171Sedward { "Cypress", specs+46, N_B, 5, 10, 6, 0 } 21511593Sleres }, 21615203Sedward 5, 3, 7, 3, "Botany Bay", 21711593Sleres { 21815171Sedward { "Shark", specs+11, N_B, 6, 15, 4, 0 }, 21915171Sedward { "Coral Snake", specs+31, N_F, 3, 30, 6, 0 }, 22015171Sedward { "Sea Lion", specs+33, N_F, 13, 50, 8, 0 } 22111593Sleres }, 22215203Sedward 4, 3, 6, 4, "Voyage to the Bottom of the Sea", 22311593Sleres { 22415171Sedward { "Seaview", specs+71, N_A, 6, 3, 3, 0 }, 22515171Sedward { "Flying Sub", specs+64, N_A, 8, 3, 3, 0 }, 22615171Sedward { "Mermaid", specs+70, N_B, 2, 5, 5, 0 }, 22715171Sedward { "Giant Squid", specs+53, N_S, 10, 30, 8, 0 } 22811593Sleres }, 22915203Sedward 7, 3, 6, 3, "Frigate Action", 23011593Sleres { 23115171Sedward { "Killdeer", specs+21, N_A, 7, 20, 8, 0 }, 23215171Sedward { "Sandpiper", specs+27, N_B, 5, 40, 8, 0 }, 23315171Sedward { "Curlew", specs+34, N_S, 10, 60, 8, 0 } 23411593Sleres }, 23515203Sedward 7, 2, 5, 6, "The Battle of Midway", 23611593Sleres { 23714014Sedward { "Enterprise", specs+49, N_A, 10, 70, 8, 0 }, 23815171Sedward { "Yorktown", specs+51, N_A, 3, 70, 7, 0 }, 23915171Sedward { "Hornet", specs+52, N_A, 6, 70, 7, 0 }, 24015171Sedward { "Akagi", specs+53, N_J, 6, 10, 4, 0 }, 24115171Sedward { "Kaga", specs+54, N_J, 4, 12, 4, 0 }, 24215171Sedward { "Soryu", specs+55, N_J, 2, 14, 4, 0 } 24311593Sleres }, 24415319Sedward 1, 3, 4, 8, "Star Trek", 24511593Sleres { 24615319Sedward { "Enterprise", specs+76, N_D,-10, 60, 7, 0 }, 24715319Sedward { "Yorktown", specs+77, N_D, 0, 70, 7, 0 }, 24815319Sedward { "Reliant", specs+78, N_D, 10, 70, 7, 0 }, 24915319Sedward { "Galileo", specs+79, N_D, 20, 60, 7, 0 }, 25015319Sedward { "Kobayashi Maru", specs+80, N_K, 0,120, 7, 0 }, 25115319Sedward { "Klingon II", specs+81, N_K, 10,120, 7, 0 }, 25215319Sedward { "Red Orion", specs+82, N_O, 0, 0, 3, 0 }, 25315319Sedward { "Blue Orion", specs+83, N_O, 10, 0, 3, 0 } 25411593Sleres } 25511593Sleres }; 25615319Sedward int nscene = sizeof scene / sizeof (struct scenario); 25711593Sleres 25812629Sedward struct shipspecs specs[] = { 25915171Sedward /* bs fs ta guns hull crew1 crew3 gunR carR rig2 rig4 pts */ 26015171Sedward /* class qual crew2 gunL carL rig1 rig3 */ 26115171Sedward /*00*/ 4, 7, 3, 19, 5, 5, 4, 2, 2, 2, 2, 2, 0, 0, 4, 4, 4, 4, 7, 26215171Sedward /*01*/ 4, 7, 3, 17, 5, 5, 4, 2, 2, 2, 0, 0, 4, 4, 3, 3, 3, 3, 6, 26315171Sedward /*02*/ 3, 5, 2, 42, 4, 7, 4, 2, 2, 2, 2, 2, 0, 0, 5, 5, 5, -1, 11, 26415171Sedward /*03*/ 4, 6, 3, 44, 3, 7, 4, 2, 2, 2, 3, 3, 0, 0, 5, 5, 5, 5, 12, 26515171Sedward /*04*/ 3, 5, 2, 64, 2, 17, 4, 8, 6, 6, 12, 12, 2, 2, 7, 7, 7, -1, 20, 26615171Sedward /*05*/ 3, 5, 2, 74, 2, 20, 4, 8, 8, 8, 16, 16, 2, 2, 7, 7, 7, -1, 26, 26715171Sedward /*06*/ 3, 5, 2, 50, 2, 12, 4, 6, 4, 4, 8, 8, 2, 2, 6, 6, 6, -1, 17, 26815171Sedward /*07*/ 3, 5, 1, 98, 1, 23, 4, 10, 10, 10, 18, 18, 2, 2, 8, 8, 8, -1, 28, 26915171Sedward /*08*/ 3, 5, 2, 74, 2, 20, 4, 8, 8, 8, 16, 16, 2, 2, 7, 7, 7, -1, 26, 27015171Sedward /*09*/ 3, 5, 2, 74, 2, 21, 3, 10, 10, 8, 20, 20, 0, 0, 7, 7, 7, -1, 24, 27115171Sedward /*10*/ 3, 5, 1, 80, 1, 23, 3, 12, 12, 10, 22, 22, 0, 0, 7, 7, 7, -1, 27, 27215171Sedward /*11*/ 3, 5, 2, 64, 2, 18, 3, 8, 8, 6, 12, 12, 0, 0, 7, 7, 7, -1, 18, 27315171Sedward /*12*/ 3, 5, 2, 44, 2, 11, 3, 4, 4, 4, 6, 6, 2, 2, 5, 5, 5, -1, 10, 27415171Sedward /*13*/ 3, 5, 2, 50, 2, 14, 3, 6, 6, 4, 8, 8, 0, 0, 6, 6, 6, -1, 14, 27515171Sedward /*14*/ 4, 6, 3, 36, 3, 11, 4, 4, 4, 2, 4, 4, 2, 2, 5, 5, 5, 5, 11, 27615171Sedward /*15*/ 4, 6, 3, 36, 3, 11, 3, 4, 4, 4, 4, 4, 2, 2, 5, 5, 5, 5, 10, 27715171Sedward /*16*/ 3, 5, 2, 74, 2, 21, 4, 10, 8, 8, 18, 18, 2, 2, 7, 7, 7, -1, 26, 27815171Sedward /*17*/ 3, 5, 2, 74, 2, 21, 3, 10, 10, 8, 20, 20, 2, 2, 7, 7, 7, -1, 23, 27915171Sedward /*18*/ 4, 6, 3, 32, 3, 8, 3, 4, 2, 2, 4, 4, 2, 2, 5, 5, 5, 5, 9, 28015171Sedward /*19*/ 4, 6, 3, 24, 4, 6, 3, 4, 4, 4, 2, 2, 0, 0, 4, 4, 4, 4, 9, 28115171Sedward /*20*/ 4, 7, 3, 38, 4, 14, 5, 6, 4, 4, 4, 4, 6, 6, 5, 5, 5, 5, 17, 28215171Sedward /*21*/ 4, 6, 3, 40, 3, 15, 3, 8, 6, 6, 6, 6, 4, 4, 5, 5, 5, 5, 15, 28315171Sedward /*22*/ 4, 7, 3, 36, 4, 11, 3, 6, 6, 4, 4, 4, 2, 2, 5, 5, 5, 5, 11, 28415171Sedward /*23*/ 4, 6, 3, 32, 3, 11, 5, 4, 4, 2, 4, 4, 2, 2, 5, 5, 5, 5, 13, 28515171Sedward /*24*/ 4, 6, 3, 38, 3, 14, 5, 4, 4, 4, 6, 6, 4, 4, 5, 5, 5, 5, 18, 28615171Sedward /*25*/ 4, 6, 3, 22, 3, 6, 5, 2, 2, 2, 0, 0, 8, 8, 4, 4, 4, 4, 11, 28715171Sedward /*26*/ 4, 6, 3, 32, 3, 11, 5, 4, 4, 2, 4, 4, 2, 2, 5, 5, 5, 5, 13, 28815171Sedward /*27*/ 4, 6, 3, 40, 3, 14, 3, 6, 6, 4, 6, 6, 4, 4, 5, 5, 5, 5, 15, 28915171Sedward /*28*/ 4, 6, 3, 32, 3, 11, 2, 4, 4, 4, 4, 4, 0, 0, 5, 5, 5, 5, 9, 29015171Sedward /*29*/ 4, 6, 3, 40, 3, 14, 2, 6, 6, 4, 6, 6, 4, 4, 5, 5, 5, 5, 12, 29115171Sedward /*30*/ 4, 6, 3, 32, 3, 8, 2, 4, 4, 1, 2, 2, 0, 0, 4, 4, 4, 4, 7, 29215171Sedward /*31*/ 4, 7, 3, 44, 4, 18, 5, 6, 6, 6, 8, 8, 6, 6, 6, 6, 6, 6, 24, 29315171Sedward /*32*/ 4, 6, 3, 38, 3, 14, 4, 4, 4, 2, 6, 6, 4, 4, 5, 5, 5, 5, 15, 29415171Sedward /*33*/ 4, 5, 3, 44, 3, 18, 5, 8, 6, 6, 8, 8, 8, 8, 6, 6, 6, 6, 24, 29515171Sedward /*34*/ 4, 6, 3, 38, 3, 14, 4, 4, 4, 4, 6, 6, 4, 4, 5, 5, 5, 5, 16, 29615171Sedward /*35*/ 4, 7, 3, 38, 4, 14, 4, 6, 6, 6, 6, 6, 6, 6, 5, 5, 5, 5, 19, 29715171Sedward /*36*/ 4, 6, 3, 38, 3, 14, 3, 6, 6, 4, 6, 6, 6, 6, 5, 5, 5, 5, 14, 29815171Sedward /*37*/ 4, 6, 3, 38, 3, 14, 5, 6, 4, 4, 6, 6, 6, 6, 5, 5, 5, 5, 17, 29915171Sedward /*38*/ 4, 7, 3, 20, 5, 6, 4, 4, 2, 2, 0, 0, 6, 6, 4, 4, 4, 4, 9, 30015171Sedward /*39*/ 4, 7, 3, 13, 6, 3, 4, 0, 2, 2, 0, 0, 2, 2, 2, 2, 2, 2, 5, 30115171Sedward /*40*/ 4, 7, 3, 19, 5, 5, 4, 2, 2, 2, 2, 2, 0, 0, 4, 4, 4, 4, 7, 30215171Sedward /*41*/ 4, 7, 3, 17, 5, 5, 4, 2, 2, 2, 2, 2, 0, 0, 3, 3, 3, 3, 6, 30315171Sedward /*42*/ 4, 7, 3, 20, 5, 6, 5, 4, 2, 2, 0, 0, 6, 6, 4, 4, 4, 4, 12, 30415171Sedward /*43*/ 4, 7, 3, 18, 5, 5, 5, 2, 2, 2, 0, 0, 6, 6, 4, 4, 4, 4, 9, 30515171Sedward /*44*/ 4, 7, 3, 24, 5, 6, 4, 4, 2, 2, 0, 0,10,10, 4, 4, 4, 4, 11, 30615171Sedward /*45*/ 4, 7, 3, 20, 5, 6, 4, 2, 2, 2, 0, 0, 8, 8, 4, 4, 4, 4, 10, 30715171Sedward /*46*/ 4, 6, 3, 44, 3, 11, 5, 4, 4, 4, 4, 4, 2, 2, 5, 5, 5, 5, 14, 30815171Sedward /*47*/ 4, 6, 3, 36, 3, 12, 4, 4, 4, 4, 6, 6, 2, 2, 5, 5, 5, 5, 14, 30915171Sedward /*48*/ 3, 5, 2, 74, 2, 21, 3, 10, 8, 8, 20, 20, 2, 2, 4, 4, 7, -1, 24, 31015171Sedward /*49*/ 3, 5, 2, 80, 2, 24, 4, 10, 8, 8, 20, 20, 2, 2, 8, 8, 8, -1, 31, 31115171Sedward /*50*/ 3, 5, 2, 74, 2, 21, 4, 8, 8, 6, 16, 16, 4, 4, 7, 7, 7, -1, 27, 31215171Sedward /*51*/ 3, 5, 2, 80, 2, 24, 3, 12, 12, 10, 22, 22, 2, 2, 7, 7, 7, -1, 27, 31315171Sedward /*52*/ 3, 5, 2, 74, 2, 21, 3, 10, 10, 8, 20, 20, 2, 2, 7, 7, 7, -1, 24, 31415171Sedward /*53*/ 3, 5, 1, 112, 1, 27, 2, 12, 12, 12, 24, 24, 0, 0, 9, 9, 9, -1, 27, 31515171Sedward /*54*/ 3, 5, 1, 96, 1, 24, 2, 12, 12, 10, 20, 20, 0, 0, 8, 8, 8, -1, 24, 31615171Sedward /*55*/ 3, 5, 2, 80, 2, 23, 2, 10, 10, 8, 20, 20, 0, 0, 7, 7, 7, -1, 23, 31715171Sedward /*56*/ 3, 5, 2, 74, 2, 21, 2, 10, 8, 8, 16, 16, 4, 4, 7, 7, 7, -1, 20, 31815171Sedward /*57*/ 4, 6, 3, 37, 3, 12, 4, 4, 4, 2, 6, 6, 4, 4, 5, 5, 5, 5, 14, 31915171Sedward /*58*/ 4, 7, 3, 16, 5, 5, 5, 2, 2, 2, 0, 0, 4, 4, 4, 4, 4, 4, 10, 32015171Sedward /*59*/ 4, 7, 3, 11, 6, 3, 4, 2, 2, 2, 0, 0, 2, 2, 2, 2, 2, 2, 5, 32115171Sedward /*60*/ 4, 7, 3, 26, 5, 6, 4, 4, 2, 2, 2, 2, 6, 6, 4, 4, 4, 4, 12, 32215171Sedward /*61*/ 4, 7, 3, 20, 5, 6, 4, 4, 2, 2, 0, 0, 6, 6, 4, 4, 4, 4, 11, 32315171Sedward /*62*/ 4, 7, 3, 17, 5, 5, 4, 2, 2, 2, 0, 0, 6, 6, 4, 4, 4, 4, 9, 32415171Sedward /*63*/ 4, 7, 3, 7, 6, 3, 4, 0, 2, 2, 0, 0, 2, 2, 2, 2, 2, 2, 4, 32515171Sedward /*64*/ 4, 6, 3, 40, 3, 15, 4, 4, 4, 4, 8, 8, 6, 6, 5, 5, 5, 5, 17, 32615171Sedward /*65*/ 4, 6, 3, 44, 3, 15, 4, 8, 8, 6, 10, 10, 2, 2, 6, 6, 6, 6, 20, 32715171Sedward /*66*/ 4, 6, 3, 38, 3, 14, 4, 4, 4, 4, 6, 6, 6, 6, 5, 5, 5, 5, 15, 32815171Sedward /*67*/ 4, 5, 3, 44, 3, 18, 5, 8, 6, 6, 8, 8, 8, 8, 6, 6, 6, 6, 24, 32915171Sedward /*68*/ 4, 6, 3, 36, 3, 9, 5, 4, 4, 2, 4, 4, 2, 2, 5, 5, 5, 5, 13, 33015171Sedward /*69*/ 3, 5, 2, 50, 2, 14, 2, 6, 6, 6, 8, 8, 0, 0, 6, 6, 6, -1, 14, 33115171Sedward /*70*/ 3, 5, 1, 136, 1, 30, 1, 8, 14, 14, 28, 28, 0, 0, 9, 9, 9, -1, 27, 33215171Sedward /*71*/ 3, 5, 1, 120, 1, 27, 5, 16, 14, 14, 28, 28, 2, 2, 9, 9, 9, -1, 43, 33315171Sedward /*72*/ 3, 5, 1, 120, 2, 21, 5, 15, 17, 15, 25, 25, 7, 7, 9, 9, 9, -1, 36, 33415171Sedward /*73*/ 3, 5, 1, 90, 3, 18, 4, 13, 15, 13, 20, 20, 6, 6, 5, 5, 5, 5, 28, 33515171Sedward /*74*/ 4, 7, 3, 6, 6, 3, 4, 2, 2, 2, 20, 20, 6, 6, 2, 2, 3, 3, 5, 33615171Sedward /*75*/ 3, 5, 1, 110, 2, 20, 4, 14, 15, 11, 26, 26, 8, 8, 7, 8, 9, -1, 34, 33715331Sedward /*76*/ 4, 7, 3, 450, 1, 99, 5, 50, 40, 40, 50, 50,25,25, 9, 9, 9, -1, 75, 33815331Sedward /*77*/ 4, 7, 3, 450, 1, 99, 5, 50, 40, 40, 50, 50,25,25, 9, 9, 9, -1, 75, 33915331Sedward /*78*/ 4, 7, 3, 450, 1, 99, 5, 50, 40, 40, 50, 50,25,25, 9, 9, 9, -1, 75, 34015331Sedward /*79*/ 4, 7, 3, 450, 1, 99, 5, 50, 40, 40, 50, 50,25,25, 9, 9, 9, -1, 75, 34115331Sedward /*80*/ 4, 7, 3, 450, 1, 99, 5, 50, 40, 40, 50, 50,25,25, 9, 9, 9, -1, 75, 34215331Sedward /*81*/ 4, 7, 3, 450, 1, 99, 5, 50, 40, 40, 50, 50,25,25, 9, 9, 9, -1, 75, 34315331Sedward /*82*/ 4, 7, 3, 450, 1, 99, 5, 50, 40, 40, 50, 50,25,25, 9, 9, 9, -1, 75, 34415331Sedward /*83*/ 4, 7, 3, 450, 1, 99, 5, 50, 40, 40, 50, 50,25,25, 9, 9, 9, -1, 75, 34515319Sedward /* bs fs ta guns hull crew1 crew3 gunR carR rig2 rig4 pts */ 34615319Sedward /* class qual crew2 gunL carL rig1 rig3 */ 34711593Sleres }; 34811593Sleres 34912629Sedward struct windeffects WET[7][6] = { 35011593Sleres { {9,9,9,9}, {9,9,9,9}, {9,9,9,9}, {9,9,9,9}, {9,9,9,9}, {9,9,9,9} }, 35111593Sleres { {3,2,2,0}, {3,2,1,0}, {3,2,1,0}, {3,2,1,0}, {2,1,0,0}, {2,1,0,0} }, 35211593Sleres { {1,1,1,0}, {1,1,0,0}, {1,0,0,0}, {1,0,0,0}, {1,0,0,0}, {1,0,0,0} }, 35311593Sleres { {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0} }, 35411593Sleres { {0,0,0,0}, {1,0,0,0}, {1,1,0,0}, {1,1,0,0}, {2,2,1,0}, {2,2,1,0} }, 35511593Sleres { {1,0,0,0}, {1,1,0,0}, {1,1,1,0}, {1,1,1,0}, {3,2,2,0}, {3,2,2,0} }, 35611593Sleres { {2,1,1,0}, {3,2,1,0}, {3,2,1,0}, {3,2,1,0}, {3,3,2,0}, {3,3,2,0} } 35711593Sleres }; 35815171Sedward 35912629Sedward struct Tables RigTable[11][6] = { 36015171Sedward { {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,1}, {0,0,1,0} }, 36115171Sedward { {0,0,0,0}, {0,0,0,0}, {0,0,0,1}, {0,0,1,0}, {1,0,0,1}, {0,1,1,1} }, 36215171Sedward { {0,0,0,0}, {0,0,0,1}, {0,0,1,1}, {0,1,0,1}, {0,1,0,1}, {1,0,1,2} }, 36315171Sedward { {0,0,0,0}, {0,0,1,1}, {0,1,0,1}, {0,0,0,2}, {0,1,0,2}, {1,0,1,2} }, 36415171Sedward { {0,1,0,1}, {1,0,0,1}, {0,1,1,2}, {0,1,0,2}, {0,0,1,3}, {1,0,1,4} }, 36515171Sedward { {0,0,1,1}, {0,1,0,2}, {1,0,0,3}, {0,1,1,3}, {1,0,0,4}, {1,1,1,4} }, 36615171Sedward { {0,0,1,2}, {0,1,1,2}, {1,1,0,3}, {0,1,0,4}, {1,0,0,4}, {1,0,1,5} }, 36715171Sedward { {0,0,1,2}, {0,1,0,3}, {1,1,0,3}, {1,0,2,4}, {0,2,1,5}, {2,1,0,5} }, 36815171Sedward { {0,2,1,3}, {1,0,0,3}, {2,1,0,4}, {0,1,1,4}, {0,1,0,5}, {1,0,2,6} }, 36915171Sedward { {1,1,0,4}, {1,0,1,4}, {2,0,0,5}, {0,2,1,5}, {0,1,2,6}, {0,2,0,7} }, 37015171Sedward { {1,0,1,5}, {0,2,0,6}, {1,2,0,6}, {1,1,1,6}, {2,0,2,6}, {1,1,2,7} } 37111593Sleres }; 37211593Sleres struct Tables HullTable[11][6] = { 37315171Sedward { {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {0,0,0,0}, {1,0,0,0}, {0,1,0,0} }, 37415171Sedward { {0,0,0,0}, {0,0,0,0}, {0,1,0,0}, {1,1,0,0}, {1,0,1,0}, {1,0,1,1} }, 37515171Sedward { {0,1,0,0}, {1,0,0,0}, {1,1,0,0}, {1,0,1,0}, {1,0,1,1}, {2,1,0,0} }, 37615171Sedward { {0,1,1,0}, {1,0,0,0}, {1,1,1,0}, {2,0,0,1}, {2,0,1,0}, {2,2,0,0} }, 37715171Sedward { {0,1,1,0}, {1,0,0,1}, {2,1,0,1}, {2,2,1,0}, {3,0,1,0}, {3,1,0,0} }, 37815171Sedward { {1,1,1,0}, {2,0,2,1}, {2,1,1,0}, {2,2,0,0}, {3,1,0,1}, {3,1,1,0} }, 37915171Sedward { {1,2,2,0}, {2,0,2,1}, {2,1,0,1}, {2,2,0,0}, {3,1,1,0}, {4,2,1,0} }, 38015171Sedward { {2,1,1,0}, {2,0,1,1}, {3,2,2,0}, {3,2,0,0}, {4,2,1,0}, {4,2,1,1} }, 38115171Sedward { {2,1,2,0}, {3,1,1,1}, {3,2,2,0}, {4,2,1,0}, {4,1,0,2}, {4,2,2,0} }, 38215171Sedward { {2,3,1,0}, {3,2,2,0}, {3,2,2,1}, {4,2,2,0}, {4,1,0,3}, {5,1,2,0} }, 38315171Sedward { {2,2,4,0}, {3,3,1,1}, {4,2,1,1}, {5,1,0,2}, {5,1,2,1}, {6,2,2,0} }, 38411593Sleres }; 38511593Sleres 38615171Sedward char AMMO[9][4] = { 38715171Sedward { -1, 1, 0, 1 }, 38815171Sedward { -1, 1, 0, 1 }, 38915171Sedward { -1, 1, 0, 1 }, 39015319Sedward { -2, 1, 0, 2 }, 39115171Sedward { -2, 2, 0, 2 }, 39215171Sedward { -2, 2, 0, 2 }, 39315319Sedward { -3, 2, 0, 2 }, 39415319Sedward { -3, 2, 0, 3 }, 39515319Sedward { -3, 2, 0, 3 } 39611593Sleres }; 39711593Sleres 39815171Sedward char HDT[9][10] = { 39915171Sedward { 1, 0,-1,-2,-3,-3,-4,-4,-4,-4 }, 40015171Sedward { 1, 1, 0,-1,-2,-2,-3,-3,-3,-3 }, 40115171Sedward { 2, 1, 0,-1,-2,-2,-3,-3,-3,-3 }, 40215171Sedward { 2, 2, 1, 0,-1,-1,-2,-2,-2,-2 }, 40315171Sedward { 3, 2, 1, 0,-1,-1,-2,-2,-2,-2 }, 40415171Sedward { 3, 3, 2, 1, 0, 0,-1,-1,-1,-1 }, 40515171Sedward { 4, 3, 2, 1, 0, 0,-1,-1,-1,-1 }, 40615171Sedward { 4, 4, 3, 2, 1, 1, 0, 0, 0, 0 }, 40715171Sedward { 5, 4, 3, 2, 1, 1, 0, 0, 0, 0 } 40811593Sleres }; 40911593Sleres 41015171Sedward char HDTrake[9][10] = { 41115171Sedward { 2, 1, 0,-1,-2,-2,-3,-3,-3,-3 }, 41215171Sedward { 2, 2, 1, 0,-1,-1,-2,-2,-2,-2 }, 41315171Sedward { 3, 2, 1, 0,-1,-1,-2,-2,-2,-2 }, 41415171Sedward { 4, 3, 2, 1, 0, 0,-1,-1,-1,-1 }, 41515171Sedward { 5, 4, 3, 2, 1, 1, 0, 0, 0, 0 }, 41615171Sedward { 6, 5, 4, 3, 2, 2, 1, 1, 1, 1 }, 41715171Sedward { 7, 6, 5, 4, 3, 3, 2, 2, 2, 2 }, 41815171Sedward { 8, 7, 6, 5, 4, 4, 3, 3, 3, 3 }, 41915171Sedward { 9, 8, 7, 6, 5, 5, 4, 4, 4, 4 } 42011593Sleres }; 42111593Sleres 42215171Sedward char QUAL[9][5] = { 42315171Sedward { -1, 0, 0, 1, 1 }, 42415171Sedward { -1, 0, 0, 1, 1 }, 42515171Sedward { -1, 0, 0, 1, 2 }, 42615171Sedward { -1, 0, 0, 1, 2 }, 42715171Sedward { -1, 0, 0, 2, 2 }, 42815171Sedward { -1,-1, 0, 2, 2 }, 42915171Sedward { -2,-1, 0, 2, 2 }, 43015171Sedward { -2,-1, 0, 2, 2 }, 43115171Sedward { -2,-1, 0, 2, 3 } 43211593Sleres }; 43311593Sleres 43415171Sedward char MT[9][3] = { 43515171Sedward { 1, 0, 0 }, 43615171Sedward { 1, 1, 0 }, 43715171Sedward { 2, 1, 0 }, 43815171Sedward { 2, 1, 1 }, 43915171Sedward { 2, 2, 1 }, 44015171Sedward { 3, 2, 1 }, 44115171Sedward { 3, 2, 2 }, 44215171Sedward { 4, 3, 2 }, 44315171Sedward { 4, 4, 2 } 44411593Sleres }; 44511593Sleres 44615171Sedward char rangeofshot[] = { 44714014Sedward 0, 44814014Sedward 1, /* grape */ 44914014Sedward 3, /* chain */ 45014014Sedward 10, /* round */ 45114014Sedward 1 /* double */ 45214014Sedward }; 45314014Sedward 45414014Sedward char *countryname[] = { 45515319Sedward "American", "British", "Spanish", "French", "Japanese", 45615319Sedward "Federation", "Klingon", "Orion" 45714014Sedward }; 45814014Sedward 45914014Sedward char *classname[] = { 46014014Sedward "Drift wood", 46114014Sedward "Ship of the Line", 46214014Sedward "Ship of the Line", 46314014Sedward "Frigate", 46414014Sedward "Corvette", 46514014Sedward "Sloop", 46614014Sedward "Brig" 46714014Sedward }; 46814014Sedward 46914014Sedward char *directionname[] = { 47014014Sedward "dead ahead", 47114014Sedward "off the starboard bow", 47214014Sedward "off the starboard beam", 47314014Sedward "off the starboard quarter", 47414014Sedward "dead astern", 47514014Sedward "off the port quarter", 47614014Sedward "off the port beam", 47714014Sedward "off the port bow", 47814014Sedward "dead ahead" 47914014Sedward }; 48014014Sedward 48115171Sedward char *qualname[] = { "dead", "mutinous", "green", "mundane", "crack", "elite" }; 48214014Sedward 48315171Sedward char loadname[] = { '-', 'G', 'C', 'R', 'D', 'E' }; 48414014Sedward 48515171Sedward char dr[] = { 0, 1, 1, 0, -1, -1, -1, 0, 1 }; 48615171Sedward char dc[] = { 0, 0, -1, -1, -1, 0, 1, 1, 1 }; 487