mirror of
https://github.com/mostlikely4r/construction-mod.git
synced 2026-01-19 19:24:44 +00:00
607 lines
18 KiB
C#
607 lines
18 KiB
C#
//A nice collection of characters.
|
||
//
|
||
|
||
//Normal
|
||
//"a b c d e f g h i j k l m n o p q r s t u v w x y z"
|
||
|
||
//a
|
||
$SW::Info["a"] = "5 0.85"; //Pieces,Space
|
||
$SW::Sizes["a",0] = "0.3 0.50 0.55 0.50 0.3 0.60";
|
||
$SW::Sizes["a",1] = "0.55 0.2 0.65 0.2 0.55 0.55";
|
||
$SW::Sizes["a",2] = "0.3 0.1 0.75 0.1 0.3 0.2";
|
||
$SW::Sizes["a",3] = "0.2 0.15 0.3 0.15 0.2 0.35";
|
||
$SW::Sizes["a",4] = "0.3 0.3 0.55 0.3 0.3 0.4";
|
||
|
||
//b
|
||
$SW::Info["b"] = "4 0.7"; //Pieces,Space
|
||
$SW::Sizes["b",0] = "0.2 0.1 0.3 0.1 0.2 0.8";
|
||
$SW::Sizes["b",1] = "0.3 0.40 0.60 0.40 0.3 0.50";
|
||
$SW::Sizes["b",2] = "0.3 0.10 0.60 0.10 0.3 0.20";
|
||
$SW::Sizes["b",3] = "0.60 0.15 0.70 0.15 0.60 0.45";
|
||
|
||
//c
|
||
$SW::Info["c"] = "3 0.75"; //Pieces,Space
|
||
$SW::Sizes["c",0] = "0.2 0.15 0.3 0.15 0.2 0.50";
|
||
$SW::Sizes["c",1] = "0.3 0.45 0.65 0.45 0.3 0.55";
|
||
$SW::Sizes["c",2] = "0.3 0.10 0.65 0.10 0.3 0.20";
|
||
|
||
//d
|
||
$SW::Info["d"] = "4 0.8"; //Pieces,Space
|
||
$SW::Sizes["d",0] = "0.2 0.15 0.3 0.15 0.2 0.45";
|
||
$SW::Sizes["d",1] = "0.3 0.40 0.60 0.40 0.3 0.50";
|
||
$SW::Sizes["d",2] = "0.3 0.10 0.60 0.10 0.3 0.20";
|
||
$SW::Sizes["d",3] = "0.60 0.1 0.70 0.1 0.60 0.8";
|
||
|
||
//e
|
||
$SW::Info["e"] = "5 0.75"; //Pieces,Space
|
||
$SW::Sizes["e",0] = "0.2 0.15 0.3 0.15 0.2 0.50";
|
||
$SW::Sizes["e",1] = "0.3 0.45 0.55 0.45 0.3 0.55";
|
||
$SW::Sizes["e",2] = "0.3 0.10 0.65 0.10 0.3 0.20";
|
||
$SW::Sizes["e",3] = "0.55 0.35 0.65 0.35 0.55 0.50";
|
||
$SW::Sizes["e",4] = "0.3 0.25 0.65 0.25 0.3 0.35";
|
||
|
||
//f
|
||
$SW::Info["f"] = "3 0.8"; //Pieces,Space
|
||
$SW::Sizes["f",0] = "0.30 0.5 0.70 0.5 0.30 0.60";
|
||
$SW::Sizes["f",1] = "0.45 0.1 0.55 0.1 0.45 0.7";
|
||
$SW::Sizes["f",2] = "0.50 0.65 0.70 0.65 0.50 0.75";
|
||
|
||
//g
|
||
$SW::Info["g"] = "5 0.75"; //Pieces,Space
|
||
$SW::Sizes["g",0] = "0.3 0.50 0.55 0.50 0.3 0.60";
|
||
$SW::Sizes["g",1] = "0.55 0.05 0.65 0.05 0.55 0.60";
|
||
$SW::Sizes["g",2] = "0.3 0.0 0.60 0.0 0.3 0.1";
|
||
$SW::Sizes["g",3] = "0.25 0.30 0.35 0.30 0.25 0.55";
|
||
$SW::Sizes["g",4] = "0.3 0.25 0.55 0.25 0.3 0.35";
|
||
|
||
//h
|
||
$SW::Info["h"] = "3 0.7"; //Pieces,Space
|
||
$SW::Sizes["h",0] = "0.2 0.1 0.3 0.1 0.2 0.8";
|
||
$SW::Sizes["h",1] = "0.3 0.40 0.60 0.40 0.3 0.50";
|
||
$SW::Sizes["h",2] = "0.55 0.1 0.65 0.1 0.55 0.45";
|
||
|
||
//i
|
||
$SW::Info["i"] = "2 0.35"; //Pieces,Space
|
||
$SW::Sizes["i",0] = "0.15 0.1 0.25 0.1 0.15 0.5";
|
||
$SW::Sizes["i",1] = "0.15 0.6 0.25 0.6 0.15 0.7";
|
||
|
||
//j
|
||
$SW::Info["j"] = "3 0.45"; //Pieces,Space
|
||
$SW::Sizes["j",0] = "0.25 0.05 0.35 0.05 0.25 0.6";
|
||
$SW::Sizes["j",1] = "0.25 0.7 0.35 0.7 0.25 0.8";
|
||
$SW::Sizes["j",2] = "0.10 0.0 0.30 0.0 0.10 0.1";
|
||
|
||
//k
|
||
$SW::Info["k"] = "3 0.6"; //Pieces,Space
|
||
$SW::Sizes["k",0] = "0.2 0.1 0.3 0.1 0.2 0.7";
|
||
$SW::Sizes["k",1] = "0.3 0.25 0.50 0.45 0.23 0.32";
|
||
$SW::Sizes["k",2] = "0.3 0.25 0.45 0.1 0.37 0.32";
|
||
|
||
//l
|
||
$SW::Info["l"] = "1 0.4"; //Pieces,Space
|
||
$SW::Sizes["l",0] = "0.2 0.1 0.3 0.1 0.2 0.8";
|
||
|
||
//m
|
||
$SW::Info["m"] = "5 0.9"; //Pieces,Space
|
||
$SW::Sizes["m",0] = "0.2 0.1 0.3 0.1 0.2 0.55";
|
||
$SW::Sizes["m",1] = "0.3 0.40 0.50 0.40 0.3 0.50";
|
||
$SW::Sizes["m",2] = "0.45 0.1 0.55 0.1 0.45 0.45";
|
||
$SW::Sizes["m",3] = "0.55 0.40 0.75 0.40 0.55 0.50";
|
||
$SW::Sizes["m",4] = "0.70 0.1 0.80 0.1 0.70 0.45";
|
||
|
||
//n
|
||
$SW::Info["n"] = "3 0.65"; //Pieces,Space
|
||
$SW::Sizes["n",0] = "0.2 0.1 0.3 0.1 0.2 0.55";
|
||
$SW::Sizes["n",1] = "0.3 0.40 0.50 0.40 0.3 0.50";
|
||
$SW::Sizes["n",2] = "0.45 0.1 0.55 0.1 0.45 0.45";
|
||
|
||
//o
|
||
$SW::Info["o"] = "4 0.65"; //Pieces,Space
|
||
$SW::Sizes["o",0] = "0.2 0.15 0.3 0.15 0.2 0.45";
|
||
$SW::Sizes["o",1] = "0.25 0.40 0.50 0.40 0.3 0.50";
|
||
$SW::Sizes["o",2] = "0.45 0.15 0.55 0.15 0.45 0.45";
|
||
$SW::Sizes["o",3] = "0.25 0.1 0.50 0.1 0.25 0.2";
|
||
|
||
//p
|
||
$SW::Info["p"] = "4 0.8"; //Pieces,Space
|
||
$SW::Sizes["p",0] = "0.3 0.50 0.55 0.50 0.3 0.60";
|
||
$SW::Sizes["p",1] = "0.5 0.30 0.6 0.30 0.5 0.55";
|
||
$SW::Sizes["p",2] = "0.2 0.0 0.3 0.00 0.2 0.60";
|
||
$SW::Sizes["p",3] = "0.3 0.25 0.55 0.25 0.3 0.35";
|
||
|
||
//q
|
||
$SW::Info["q"] = "4 0.75"; //Pieces,Space
|
||
$SW::Sizes["q",0] = "0.3 0.50 0.55 0.50 0.3 0.60";
|
||
$SW::Sizes["q",1] = "0.55 0.0 0.65 0.0 0.55 0.60";
|
||
$SW::Sizes["q",2] = "0.25 0.30 0.35 0.30 0.25 0.55";
|
||
$SW::Sizes["q",3] = "0.3 0.25 0.55 0.25 0.3 0.35";
|
||
|
||
//r
|
||
$SW::Info["r"] = "4 0.6"; //Pieces,Space
|
||
$SW::Sizes["r",0] = "0.2 0.1 0.3 0.1 0.2 0.55";
|
||
$SW::Sizes["r",1] = "0.3 0.38 0.35 0.38 0.3 0.48";
|
||
$SW::Sizes["r",2] = "0.3 0.40 0.50 0.40 0.3 0.50";
|
||
$SW::Sizes["r",3] = "0.45 0.38 0.50 0.38 0.45 0.48";
|
||
|
||
//s
|
||
$SW::Info["s"] = "7 0.6"; //Pieces,Space
|
||
$SW::Sizes["s",0] = "0.2 0.40 0.3 0.40 0.2 0.50";
|
||
$SW::Sizes["s",1] = "0.25 0.45 0.45 0.45 0.3 0.55";
|
||
$SW::Sizes["s",2] = "0.2 0.40 0.40 0.2 0.25 0.50";
|
||
$SW::Sizes["s",3] = "0.40 0.15 0.5 0.15 0.4 0.25";
|
||
$SW::Sizes["s",4] = "0.25 0.1 0.45 0.1 0.2 0.2";
|
||
$SW::Sizes["s",5] = "0.40 0.40 0.5 0.40 0.4 0.5";
|
||
$SW::Sizes["s",6] = "0.2 0.15 0.3 0.15 0.2 0.25";
|
||
|
||
//t
|
||
$SW::Info["t"] = "3 0.75"; //Pieces,Space
|
||
$SW::Sizes["t",0] = "0.35 0.5 0.65 0.5 0.35 0.60";
|
||
$SW::Sizes["t",1] = "0.45 0.1 0.55 0.1 0.45 0.7";
|
||
$SW::Sizes["t",2] = "0.55 0.1 0.65 0.1 0.55 0.2";
|
||
|
||
//u
|
||
$SW::Info["u"] = "3 0.60"; //Pieces,Space
|
||
$SW::Sizes["u",0] = "0.2 0.1 0.3 0.1 0.2 0.50";
|
||
$SW::Sizes["u",1] = "0.25 0.05 0.50 0.05 0.3 0.15";
|
||
$SW::Sizes["u",2] = "0.45 0.1 0.55 0.1 0.45 0.50";
|
||
|
||
//v
|
||
$SW::Info["v"] = "2 0.60"; //Pieces,Space
|
||
$SW::Sizes["v",0] = "0.1 0.5 0.3 0.1 0.15 0.55";
|
||
$SW::Sizes["v",1] = "0.3 0.1 0.5 0.5 0.25 0.15";
|
||
|
||
//w
|
||
$SW::Info["w"] = "4 0.9"; //Pieces,Space
|
||
$SW::Sizes["w",0] = "0.1 0.5 0.3 0.1 0.15 0.55";
|
||
$SW::Sizes["w",1] = "0.3 0.1 0.5 0.5 0.25 0.15";
|
||
$SW::Sizes["w",2] = "0.4 0.5 0.6 0.1 0.45 0.55";
|
||
$SW::Sizes["w",3] = "0.6 0.1 0.8 0.5 0.55 0.15";
|
||
|
||
//x
|
||
$SW::Info["x"] = "2 0.5"; //Pieces,Space
|
||
$SW::Sizes["x",0] = "0.1 0.4 0.38 0.1 0.15 0.45";
|
||
$SW::Sizes["x",1] = "0.12 0.1 0.4 0.4 0.07 0.15";
|
||
|
||
//y
|
||
$SW::Info["y"] = "3 0.60"; //Pieces,Space
|
||
$SW::Sizes["y",0] = "0.1 0.5 0.25 0.25 0.15 0.55";
|
||
$SW::Sizes["y",1] = "0.3 0.15 0.5 0.5 0.25 0.2";
|
||
$SW::Sizes["y",2] = "0.15 0.10 0.3 0.1 0.2 0.18";
|
||
|
||
//z
|
||
$SW::Info["z"] = "3 0.6"; //Pieces,Space
|
||
$SW::Sizes["z",0] = "0.1 0.40 0.4 0.40 0.1 0.50";
|
||
$SW::Sizes["z",1] = "0.15 0.1 0.4 0.4 0.1 0.15";
|
||
$SW::Sizes["z",2] = "0.1 0.1 0.4 0.1 0.1 0.2";
|
||
|
||
//Numbers
|
||
//"1 2 3 4 5 6 7 8 9 0"
|
||
|
||
//1
|
||
$SW::Info["1"] = "3 0.65"; //Pieces,Space
|
||
$SW::Sizes["1",0] = "0.3 0.1 0.4 0.1 0.3 0.8";
|
||
$SW::Sizes["1",1] = "0.2 0.6 0.4 0.75 0.17 0.67";
|
||
$SW::Sizes["1",2] = "0.15 0.0 0.55 0.0 0.1 0.1";
|
||
|
||
//2
|
||
$SW::Info["2"] = "4 0.65"; //Pieces,Space
|
||
$SW::Sizes["2",0] = "0.1 0.7 0.5 0.7 0.1 0.8";
|
||
$SW::Sizes["2",1] = "0.45 0.5 0.55 0.5 0.45 0.75";
|
||
$SW::Sizes["2",2] = "0.15 0.0 0.55 0.5 0.08 0.07";
|
||
$SW::Sizes["2",3] = "0.07 0.0 0.55 0.0 0.07 0.1";
|
||
|
||
//3
|
||
$SW::Info["3"] = "5 0.65"; //Pieces,Space
|
||
$SW::Sizes["3",0] = "0.1 0.7 0.5 0.7 0.1 0.8";
|
||
$SW::Sizes["3",1] = "0.45 0.45 0.55 0.45 0.45 0.75";
|
||
$SW::Sizes["3",2] = "0.1 0.35 0.5 0.35 0.1 0.45";
|
||
$SW::Sizes["3",3] = "0.45 0.05 0.55 0.05 0.45 0.35";
|
||
$SW::Sizes["3",4] = "0.1 0.0 0.5 0.0 0.1 0.1";
|
||
|
||
//4
|
||
|
||
$SW::Info["4"] = "3 0.75"; //Pieces,Space
|
||
$SW::Sizes["4",0] = "0.4 0.0 0.5 0.0 0.4 0.8";
|
||
$SW::Sizes["4",1] = "0.1 0.25 0.5 0.75 0.17 0.32";
|
||
$SW::Sizes["4",2] = "0.1 0.25 0.65 0.25 0.1 0.35";
|
||
|
||
//5
|
||
$SW::Info["5"] = "5 0.7"; //Pieces,Space
|
||
$SW::Sizes["5",0] = "0.1 0.35 0.2 0.35 0.1 0.8";
|
||
$SW::Sizes["5",1] = "0.2 0.35 0.55 0.35 0.2 0.45";
|
||
$SW::Sizes["5",2] = "0.1 0.0 0.55 0.00 0.1 0.10";
|
||
$SW::Sizes["5",3] = "0.5 0.05 0.60 0.05 0.50 0.40";
|
||
$SW::Sizes["5",4] = "0.2 0.70 0.60 0.70 0.2 0.8";
|
||
|
||
//6
|
||
$SW::Info["6"] = "6 0.7"; //Pieces,Space
|
||
$SW::Sizes["6",0] = "0.1 0.05 0.2 0.05 0.1 0.7";
|
||
$SW::Sizes["6",1] = "0.2 0.35 0.55 0.35 0.2 0.45";
|
||
$SW::Sizes["6",2] = "0.15 0.0 0.55 0.00 0.15 0.10";
|
||
$SW::Sizes["6",3] = "0.50 0.05 0.60 0.05 0.50 0.40";
|
||
$SW::Sizes["6",4] = "0.15 0.65 0.60 0.70 0.08 0.72";
|
||
|
||
//7
|
||
$SW::Info["7"] = "2 0.6"; //Pieces,Space
|
||
$SW::Sizes["7",0] = "0.1 0.7 0.5 0.7 0.1 0.8";
|
||
$SW::Sizes["7",1] = "0.2 0.0 0.5 0.7 0.13 0.07";
|
||
|
||
//8
|
||
$SW::Info["8"] = "7 0.7"; //Pieces,Space
|
||
$SW::Sizes["8",0] = "0.1 0.05 0.2 0.05 0.1 0.43";
|
||
$SW::Sizes["8",1] = "0.1 0.45 0.58 0.35 0.17 0.52";
|
||
$SW::Sizes["8",2] = "0.15 0.00 0.55 0.00 0.15 0.15";
|
||
$SW::Sizes["8",3] = "0.50 0.05 0.60 0.05 0.50 0.45";
|
||
$SW::Sizes["8",4] = "0.15 0.70 0.55 0.70 0.15 0.80";
|
||
$SW::Sizes["8",5] = "0.1 0.45 0.2 0.45 0.1 0.75";
|
||
$SW::Sizes["8",6] = "0.50 0.47 0.60 0.47 0.50 0.75";
|
||
|
||
//9
|
||
$SW::Info["9"] = "6 0.7"; //Pieces,Space
|
||
$SW::Sizes["9",0] = "0.1 0.45 0.58 0.35 0.17 0.52";
|
||
$SW::Sizes["9",1] = "0.15 0.00 0.55 0.00 0.15 0.15";
|
||
$SW::Sizes["9",2] = "0.50 0.05 0.60 0.05 0.50 0.45";
|
||
$SW::Sizes["9",3] = "0.15 0.70 0.55 0.70 0.15 0.80";
|
||
$SW::Sizes["9",4] = "0.1 0.45 0.2 0.45 0.1 0.75";
|
||
$SW::Sizes["9",5] = "0.50 0.47 0.60 0.47 0.50 0.75";
|
||
|
||
//0
|
||
$SW::Info["0"] = "4 0.7"; //Pieces,Space
|
||
$SW::Sizes["0",0] = "0.1 0.05 0.2 0.05 0.1 0.75";
|
||
$SW::Sizes["0",1] = "0.15 0.00 0.55 0.00 0.15 0.15";
|
||
$SW::Sizes["0",2] = "0.50 0.05 0.60 0.05 0.50 0.75";
|
||
$SW::Sizes["0",3] = "0.15 0.70 0.55 0.70 0.15 0.80";
|
||
|
||
//Tribes2 String Chars
|
||
// " ' \
|
||
|
||
//"
|
||
$SW::Info["\""] = "2 0.40"; //Pieces,Space
|
||
$SW::Sizes["\"",0] = "0.15 0.65 0.20 0.65 0.15 0.8";
|
||
$SW::Sizes["\"",1] = "0.25 0.65 0.30 0.65 0.25 0.8";
|
||
|
||
//'
|
||
$SW::Info["\'"] = "1 0.30"; //Pieces,Space
|
||
$SW::Sizes["\'",0] = "0.15 0.65 0.20 0.65 0.15 0.8";
|
||
|
||
// \
|
||
$SW::Info["\\"] = "1 0.70"; //Pieces,Space
|
||
$SW::Sizes["\\",0] = "0.1 0.75 0.6 0.1 0.15 0.8";
|
||
|
||
|
||
//Skywrite string Chars
|
||
//+ /
|
||
|
||
$SW::Info["/+"] = "2 0.70"; //Pieces,Space
|
||
$SW::Sizes["/+",0] = "0.1 0.35 0.6 0.35 0.1 0.45";
|
||
$SW::Sizes["/+",1] = "0.3 0.1 0.4 0.1 0.3 0.7";
|
||
|
||
// /
|
||
$SW::Info["//"] = "1 0.70"; //Pieces,Space
|
||
$SW::Sizes["//",0] = "0.1 0.1 0.6 0.8 0.05 0.15";
|
||
|
||
|
||
//Sentance builders
|
||
//. , : ; ! ?
|
||
|
||
//.
|
||
$SW::Info["."] = "1 0.30"; //Pieces,Space
|
||
$SW::Sizes[".",0] = "0.1 0.1 0.20 0.1 0.1 0.2";
|
||
|
||
//,
|
||
$SW::Info[","] = "2 0.30"; //Pieces,Space
|
||
$SW::Sizes[",",0] = "0.1 0.1 0.20 0.1 0.1 0.2";
|
||
$SW::Sizes[",",1] = "0.1 0.0 0.2 0.1 0.05 0.05";
|
||
|
||
//:
|
||
$SW::Info[":"] = "2 0.30"; //Pieces,Space
|
||
$SW::Sizes[":",0] = "0.1 0.2 0.20 0.2 0.1 0.3";
|
||
$SW::Sizes[":",1] = "0.1 0.5 0.20 0.5 0.1 0.6";
|
||
|
||
//;
|
||
$SW::Info[";"] = "3 0.30"; //Pieces,Space
|
||
$SW::Sizes[";",0] = "0.1 0.2 0.20 0.2 0.1 0.3";
|
||
$SW::Sizes[";",1] = "0.1 0.1 0.2 0.2 0.05 0.15";
|
||
$SW::Sizes[";",2] = "0.1 0.5 0.20 0.5 0.1 0.6";
|
||
|
||
//!
|
||
$SW::Info["!"] = "2 0.35"; //Pieces,Space
|
||
$SW::Sizes["!",0] = "0.15 0.2 0.25 0.2 0.15 0.8";
|
||
$SW::Sizes["!",1] = "0.15 0.0 0.25 0.0 0.15 0.1";
|
||
|
||
//?
|
||
$SW::Info["?"] = "6 0.65"; //Pieces,Space
|
||
$SW::Sizes["?",0] = "0.2 0.7 0.5 0.7 0.2 0.8";
|
||
$SW::Sizes["?",1] = "0.15 0.65 0.25 0.65 0.15 0.75";
|
||
$SW::Sizes["?",2] = "0.45 0.5 0.55 0.5 0.45 0.75";
|
||
$SW::Sizes["?",3] = "0.35 0.25 0.55 0.5 0.27 0.33";
|
||
$SW::Sizes["?",4] = "0.25 0.2 0.35 0.2 0.25 0.3";
|
||
$SW::Sizes["?",5] = "0.25 0.0 0.35 0.0 0.25 0.1";
|
||
|
||
|
||
|
||
//#
|
||
$SW::Info["#"] = "4 0.55"; //Pieces,Space
|
||
$SW::Sizes["#",0] = "0.15 0.15 0.20 0.15 0.15 0.7";
|
||
$SW::Sizes["#",1] = "0.25 0.15 0.30 0.15 0.25 0.7";
|
||
$SW::Sizes["#",2] = "0.05 0.30 0.40 0.30 0.05 0.35";
|
||
$SW::Sizes["#",3] = "0.05 0.50 0.40 0.50 0.05 0.55";
|
||
|
||
//$
|
||
$SW::Info["$"] = "6 0.7"; //Pieces,Space
|
||
$SW::Sizes["$",0] = "0.2 0.65 0.55 0.65 0.2 0.75";
|
||
$SW::Sizes["$",1] = "0.15 0.40 0.25 0.40 0.15 0.7";
|
||
$SW::Sizes["$",2] = "0.2 0.40 0.55 0.30 0.27 0.47";
|
||
$SW::Sizes["$",3] = "0.5 0.10 0.60 0.1 0.50 0.40";
|
||
$SW::Sizes["$",4] = "0.2 0.05 0.55 0.05 0.25 0.15";
|
||
$SW::Sizes["$",5] = "0.325 0.0 0.425 0.0 0.325 0.80";
|
||
|
||
//%
|
||
$SW::Info["%"] = "3 0.6"; //Pieces,Space
|
||
$SW::Sizes["%",0] = "0.4 0.1 0.5 0.0 0.5 0.2";
|
||
$SW::Sizes["%",1] = "0.1 0.0 0.6 0.8 0.03 0.07";
|
||
$SW::Sizes["%",2] = "0.0 0.75 0.1 0.65 0.1 0.85";
|
||
|
||
//&
|
||
$SW::Info["&"] = "6 0.7"; //Pieces,Space
|
||
$SW::Sizes["&",0] = "0.5 0.0 0.6 0.5 0.48 0.05";
|
||
$SW::Sizes["&",1] = "0.1 0.0 0.5 0.0 0.1 0.1";
|
||
$SW::Sizes["&",2] = "0.05 0.05 0.15 0.05 0.05 0.25";
|
||
$SW::Sizes["&",3] = "0.1 0.20 0.55 0.65 0.05 0.25";
|
||
$SW::Sizes["&",4] = "0.45 0.75 0.55 0.65 0.50 0.80";
|
||
$SW::Sizes["&",5] = "0.25 0.55 0.60 0.60 0.20 0.70";
|
||
|
||
|
||
//Hooks
|
||
//( ) [ ] { } < >
|
||
|
||
//(
|
||
$SW::Info["("] = "3 0.45"; //Pieces,Space
|
||
$SW::Sizes["(",0] = "0.155 0.45 0.4 0.75 0.105 0.50";
|
||
$SW::Sizes["(",1] = "0.1 0.3 0.2 0.3 0.1 0.5";
|
||
$SW::Sizes["(",2] = "0.1 0.3 0.35 0.0 0.15 0.35";
|
||
|
||
//)
|
||
$SW::Info[")"] = "3 0.4"; //Pieces,Space
|
||
$SW::Sizes[")",0] = "0.0 0.75 0.24 0.46 0.05 0.8";
|
||
$SW::Sizes[")",1] = "0.2 0.3 0.3 0.3 0.2 0.5";
|
||
$SW::Sizes[")",2] = "0.05 0.0 0.3 0.3 0.0 0.05";
|
||
|
||
//[
|
||
$SW::Info["["] = "3 0.4"; //Pieces,Space
|
||
$SW::Sizes["[",0] = "0.0 0.7 0.3 0.7 0.0 0.8";
|
||
$SW::Sizes["[",1] = "0.0 0.1 0.1 0.1 0.0 0.7";
|
||
$SW::Sizes["[",2] = "0.0 0.0 0.3 0.0 0.0 0.1";
|
||
|
||
//]
|
||
$SW::Info["]"] = "3 0.4"; //Pieces,Space
|
||
$SW::Sizes["]",0] = "0.0 0.7 0.3 0.7 0.0 0.8";
|
||
$SW::Sizes["]",1] = "0.2 0.1 0.3 0.1 0.2 0.7";
|
||
$SW::Sizes["]",2] = "0.0 0.0 0.3 0.0 0.0 0.1";
|
||
|
||
//{
|
||
$SW::Info["{"] = "4 0.4"; //Pieces,Space
|
||
$SW::Sizes["{",0] = "0.15 0.7 0.4 0.7 0.15 0.8";
|
||
$SW::Sizes["{",1] = "0.1 0.1 0.2 0.1 0.1 0.7";
|
||
$SW::Sizes["{",2] = "0.15 0.0 0.4 0.0 0.15 0.1";
|
||
$SW::Sizes["{",3] = "0.0 0.35 0.1 0.35 0.0 0.45";
|
||
|
||
//}
|
||
$SW::Info["}"] = "4 0.4"; //Pieces,Space
|
||
$SW::Sizes["}",0] = "0.0 0.7 0.25 0.7 0.0 0.8";
|
||
$SW::Sizes["}",1] = "0.2 0.1 0.3 0.1 0.2 0.7";
|
||
$SW::Sizes["}",2] = "0.0 0.0 0.25 0.0 0.0 0.1";
|
||
$SW::Sizes["}",3] = "0.3 0.35 0.4 0.35 0.3 0.45";
|
||
|
||
//<
|
||
$SW::Info["<"] = "2 0.45"; //Pieces,Space
|
||
$SW::Sizes["<",0] = "0.155 0.35 0.4 0.65 0.105 0.40";
|
||
$SW::Sizes["<",1] = "0.1 0.4 0.35 0.1 0.15 0.45";
|
||
|
||
//>
|
||
$SW::Info[">"] = "2 0.6"; //Pieces,Space
|
||
$SW::Sizes[">",0] = "0.0 0.65 0.24 0.36 0.05 0.7";
|
||
$SW::Sizes[">",1] = "0.05 0.1 0.3 0.4 0.0 0.15";
|
||
|
||
|
||
//Lines
|
||
// = _ - |
|
||
|
||
//=
|
||
$SW::Info["="] = "2 0.45"; //Pieces,Space
|
||
$SW::Sizes["=",0] = "0.05 0.25 0.40 0.25 0.05 0.35";
|
||
$SW::Sizes["=",1] = "0.05 0.50 0.40 0.50 0.05 0.60";
|
||
|
||
//-
|
||
$SW::Info["-"] = "1 0.45"; //Pieces,Space
|
||
$SW::Sizes["-",0] = "0.05 0.35 0.40 0.35 0.05 0.45";
|
||
|
||
//_
|
||
$SW::Info["_"] = "1 0.45"; //Pieces,Space
|
||
$SW::Sizes["_",0] = "0.05 0.05 0.40 0.05 0.05 0.15";
|
||
|
||
//|
|
||
$SW::Info["|"] = "1 0.40"; //Pieces,Space
|
||
$SW::Sizes["|",0] = "0.15 0.0 0.25 0.0 0.15 0.8";
|
||
|
||
|
||
//Space
|
||
$SW::Info["sp"] = "0 0.5"; //Pieces,Space
|
||
|
||
|
||
//Capital Letters
|
||
|
||
//T
|
||
$SW::Info["+t"] = "2 1"; //Pieces,Space
|
||
$SW::Sizes["+t",0] = "0 0.8 1 0.8 0 1";
|
||
$SW::Sizes["+t",1] = "0.4 0 0.6 0 0.4 0.8";
|
||
|
||
$SW::Thickness = 0.1;
|
||
|
||
function GameConnection::skyWrite(%cl,%word,%dist,%scale,%center,%upright,%angle,%mirror) {
|
||
if (%word $= "")
|
||
return;
|
||
if (%dist $= "" || %dist == 0)
|
||
%dist = 50;
|
||
if (%scale $= "" || %scale == 0)
|
||
%scale = 5;
|
||
%word = SW_goodWord(%word);
|
||
%obj = %cl.player;
|
||
%pos = %obj.getEyepoint();
|
||
%dir = %obj.getEyeVector();
|
||
%location = vectorAdd(%pos,vectorScale(%dir,%dist));
|
||
if (%upright)
|
||
%dir = vectorNormalize(getWords(%dir,0,1));
|
||
if (%mirror)
|
||
%dir = vectorScale(%dir,-1);
|
||
SW_word(%word,%location,%dir,%scale,%center,%cl,%angle);
|
||
}
|
||
|
||
function SW_word(%word,%pos,%nrm,%scale,%center,%cl,%angle) {
|
||
%cl.lastword++;
|
||
%z = vectorNormalize(%nrm);
|
||
%tx = vectorCross(%nrm,"0 0 1");
|
||
%up = vectorAdd(vectorScale("0 0 1",mCos(mDegToRad(%angle))),vectorScale(%tx,mSin(mDegToRad(%angle))));
|
||
%x = vectorCross(%nrm,%up);
|
||
|
||
if (%center) {
|
||
for (%td = 0; %td < getWordCount(%word);%td++) {
|
||
%letter = getWord(%word,%td);
|
||
%space = %space + getWord($SW::Info[%letter],1) * %scale;
|
||
}
|
||
%space = %space * -0.5;
|
||
%pos = vectorAdd(%pos,vectorScale(%up,-0.5 * %scale));
|
||
}
|
||
|
||
for (%td = 0; %td < getWordCount(%word);%td++) {
|
||
%letter = getWord(%word,%td);
|
||
SW_letter(%letter,vectorAdd(%pos,vectorScale(%x,%space)),%nrm,%scale,%cl,%angle);
|
||
%space = %space + getWord($SW::Info[%letter],1) * %scale;
|
||
}
|
||
}
|
||
|
||
function SW_letter(%letter,%pos,%nrm,%scale,%cl,%angle) {
|
||
%z = vectorNormalize(%nrm);
|
||
%tx = vectorCross(%nrm,"0 0 1");
|
||
%up = vectorAdd(vectorScale("0 0 1",mCos(mDegToRad(%angle))),vectorScale(%tx,mSin(mDegToRad(%angle))));
|
||
%x = vectorCross(%nrm,%up);
|
||
%y = vectorCross(%x,%nrm);
|
||
|
||
%matrix = %x SPC %y SPC %z;
|
||
%pieces = getWord($SW::Info[%letter],0);
|
||
for (%td = 0; %td < %pieces;%td++) {
|
||
%obj = SW_letterPart(%letter,%td,%pos,%matrix,%scale);
|
||
%obj.textGroup(%cl,%cl.lastword);
|
||
%obj.team = %cl.team;
|
||
%obj.needsFit = 1;
|
||
// commented out. Can easily remove writing with "remove orphaned pieces", even if client is no longer in game
|
||
// %obj.setOwner(0,%cl);
|
||
}
|
||
}
|
||
|
||
function SW_letterPart(%letter,%part,%pos,%matrix,%scale) {
|
||
%partInfo = $SW::Sizes[%letter,%part];
|
||
%p1 = SW_goodSquare(%partInfo);
|
||
%pos1 = vectorScale(matrixMult(getWords(%p1,0,1) SPC "0",%matrix),%scale);
|
||
%vecx1 = vectorScale(matrixMult(getWords(%p1,2,3) SPC "0",%matrix),%scale);
|
||
%vecy1 = vectorScale(matrixMult(getWords(%p1,4,5) SPC "0",%matrix),%scale);
|
||
%vecz1 = vectorScale(getWords(%matrix,6,8),%scale * $SW::Thickness);
|
||
%obj = SW_bar(vectorAdd(%pos,%pos1),%vecx1,%vecy1,%vecz1);
|
||
return %obj;
|
||
}
|
||
|
||
function SW_goodSquare(%p) {
|
||
%pos = getWords(%p,0,1);
|
||
%x = getWords(%p,2,3);
|
||
%y = getWords(%p,4,5);
|
||
return %pos SPC getWords(VectorSub(%x,%pos),0,1) SPC getWords(VectorSub(%y,%pos),0,1);
|
||
}
|
||
|
||
function SW_goodWord(%word) {
|
||
%id = 0;
|
||
while (%id < strLen(%word)) {
|
||
%letter = getSubStr(%word,%id,1);
|
||
if (%letter $= "" || %letter $= "/" || %letter $= "+") {
|
||
%letter = getSubStr(%word,%id,2);
|
||
%id++;
|
||
}
|
||
if (%letter $= " ")
|
||
%letter = "sp";
|
||
%id++;
|
||
if (%goodWord !$= "")
|
||
%goodWord = %goodWord SPC %letter;
|
||
else
|
||
%goodWord = %letter;
|
||
}
|
||
return %goodWord;
|
||
}
|
||
|
||
//Creates the actual beam
|
||
function SW_bar(%pos,%fo,%ri,%up) {
|
||
%size = vectorLen(%fo) SPC vectorLen(%ri) SPC vectorLen(%up);
|
||
%rot = fullRot(%up,%fo);
|
||
|
||
%obj = new StaticShape() {
|
||
dataBlock = DeployedSpine;
|
||
};
|
||
|
||
// %obj = new ForceFieldBare() {
|
||
// datablock = DeployedForceField1;
|
||
// };
|
||
|
||
%obj.setRealSize(%size);
|
||
%obj.setRotation(%rot);
|
||
%pos = microAdjust(%pos);
|
||
%obj.setEdge(%pos,"-1 1 -1");
|
||
return %obj;
|
||
}
|
||
|
||
|
||
///Grouping
|
||
|
||
function GameBase::textGroup(%obj,%cl,%word) {
|
||
%subGroup = %cl @ "/" @ %word;
|
||
%group = nameToID("MissionCleanup/textGroup/" @ %subgroup);
|
||
if (%group <= 0) {
|
||
%group = new SimGroup(%word);
|
||
addToClientTextGroup(%group,%cl);
|
||
}
|
||
%group.add(%obj);
|
||
}
|
||
|
||
function addToClientTextGroup(%obj,%cl) {
|
||
%group = nameToID("MissionCleanup/textGroup/"@ %cl);
|
||
if (%group <= 0) {
|
||
%group = new SimGroup(%cl);
|
||
addToTextGroup(%group);
|
||
}
|
||
%group.add(%obj);
|
||
}
|
||
|
||
function addToTextGroup(%obj) {
|
||
%group = nameToID("MissionCleanup/textGroup");
|
||
if (%group <= 0) {
|
||
%group = new SimGroup("textGroup");
|
||
MissionCleanup.add(%group);
|
||
}
|
||
%group.add(%obj);
|
||
}
|
||
|
||
function getLatestGroup(%group) {
|
||
%count = %group.getCount();
|
||
return %group.getObject(%count - 1);
|
||
}
|
||
|
||
function GameConnection::removeLastWord(%cl) {
|
||
%group = nameToID("MissionCleanup/textGroup/" @ %cl);
|
||
%lastWord = getLatestGroup(%group);
|
||
if (isObject(%lastWord))
|
||
%lastWord.delete();
|
||
}
|
||
|
||
function GameConnection::removeWords(%cl) {
|
||
%group = nameToID("MissionCleanup/textGroup/" @ %cl);
|
||
if (isObject(%group))
|
||
%group.delete();
|
||
}
|