Blockland Forums > Modification Help
Getting a print name from ID? [Solved]
(1/2) > >>
Chrono:
How do I get:
Letters/A
from:
49

?


Solution:
Easier than I imagined.


--- Code: ---function getPrintName(%id)
{
%texture = getPrintTexture(%id);
%package = getField(strreplace(%texture,"/","\t"),1);
%category = getField(strReplace(%package,"_","\t"),1);
%name = fileBase(%texture);
%return = %category @ "/" @ %name;
return %return;
}
--- End code ---
Ephialtes:
Check the tutorial code, can't remember if it's dso'd or not.

Otherwise export all the $ variables to a file and have a look - it's a string table in there I think.
Chrono:

--- Quote from: Ephialtes on February 17, 2012, 08:44:07 AM ---Check the tutorial code, can't remember if it's dso'd or not.
--- End quote ---

--- Code: ---%object.getPrintID() $= $printNameTable["Letters/-minus"]
--- End code ---
It does this, which the name is already known and compares it to the ID.

--- Quote from: Ephialtes on February 17, 2012, 08:44:07 AM ---Otherwise export all the $ variables to a file and have a look - it's a string table in there I think.

--- End quote ---
All I get is a table for getting IDs from names. I need to get a name from an ID.

--- Code: ---$Con::printLevel = "10";
$printAREnd1x1 = "24";
$printAREnd1x1f = "24";
$printAREnd1x2f = "24";
$printAREnd2x2f = "14";
$printAREnd2x2r = "7";
$printAREndLetters = "77";
$printARNumPrints1x1 = "0";
$printARNumPrints1x1f = "0";
$printARNumPrints1x2f = "10";
$printARNumPrints2x2f = "7";
$printARNumPrints2x2r = "7";
$printARNumPrintsLetters = "53";
$printARStart1x1 = "24";
$printARStart1x1f = "24";
$printARStart1x2f = "14";
$printARStart2x2f = "7";
$printARStart2x2r = "0";
$printARStartLetters = "24";
$printNameTable1x2f/blank = "21";
$printNameTable1x2f/BLP = "23";
$printNameTable1x2f/caution1 = "20";
$printNameTable1x2f/chip1 = "19";
$printNameTable1x2f/computer1 = "18";
$printNameTable1x2f/controller = "17";
$printNameTable1x2f/keyboard = "16";
$printNameTable1x2f/letter1 = "15";
$printNameTable1x2f/tvremote = "22";
$printNameTable1x2f/vent = "14";
$printNameTable2x2f/arrow = "13";
$printNameTable2x2f/blank = "12";
$printNameTable2x2f/cautionTriangle = "11";
$printNameTable2x2f/circle = "10";
$printNameTable2x2f/handicap = "9";
$printNameTable2x2f/square = "8";
$printNameTable2x2f/vent = "7";
$printNameTable2x2r/medical1 = "6";
$printNameTable2x2r/monitor1 = "5";
$printNameTable2x2r/monitor2 = "4";
$printNameTable2x2r/monitor3 = "0";
$printNameTable2x2r/phone = "3";
$printNameTable2x2r/radar1 = "2";
$printNameTable2x2r/vent = "1";
$printNameTableLetters/-and = "76";
$printNameTableLetters/-apostrophe = "75";
$printNameTableLetters/-asterisk = "74";
$printNameTableLetters/-at = "73";
$printNameTableLetters/-bang = "72";
$printNameTableLetters/-caret = "71";
$printNameTableLetters/-dollar = "70";
$printNameTableLetters/-equals = "69";
$printNameTableLetters/-greater_than = "68";
$printNameTableLetters/-less_than = "67";
$printNameTableLetters/-minus = "66";
$printNameTableLetters/-percent = "65";
$printNameTableLetters/-period = "64";
$printNameTableLetters/-plus = "63";
$printNameTableLetters/-pound = "62";
$printNameTableLetters/-qmark = "61";
$printNameTableLetters/-space = "60";
$printNameTableLetters/0 = "59";
$printNameTableLetters/1 = "58";
$printNameTableLetters/2 = "57";
$printNameTableLetters/3 = "56";
$printNameTableLetters/4 = "55";
$printNameTableLetters/5 = "54";
$printNameTableLetters/6 = "53";
$printNameTableLetters/7 = "52";
$printNameTableLetters/8 = "51";
$printNameTableLetters/9 = "50";
$printNameTableLetters/A = "49";
$printNameTableLetters/B = "48";
$printNameTableLetters/C = "47";
$printNameTableLetters/D = "46";
$printNameTableLetters/E = "45";
$printNameTableLetters/F = "44";
$printNameTableLetters/G = "43";
$printNameTableLetters/H = "42";
$printNameTableLetters/I = "41";
$printNameTableLetters/J = "40";
$printNameTableLetters/K = "39";
$printNameTableLetters/L = "38";
$printNameTableLetters/M = "37";
$printNameTableLetters/N = "36";
$printNameTableLetters/O = "35";
$printNameTableLetters/P = "34";
$printNameTableLetters/Q = "33";
$printNameTableLetters/R = "32";
$printNameTableLetters/S = "31";
$printNameTableLetters/T = "30";
$printNameTableLetters/U = "29";
$printNameTableLetters/V = "28";
$printNameTableLetters/W = "27";
$printNameTableLetters/X = "26";
$printNameTableLetters/Y = "25";
$printNameTableLetters/Z = "24";


--- End code ---
Slicksilver:

--- Quote from: Chrono on February 17, 2012, 08:51:13 AM ---I need to get a name from an ID.

--- End quote ---
I'd say your best chance is a big ass switch. As far as I know there's no reverse way to get name from ID.
Chrono:

--- Quote from: Slicksilver on February 17, 2012, 01:16:21 PM ---I'd say your best chance is a big ass switch. As far as I know there's no reverse way to get name from ID.

--- End quote ---
How come the default game can do it then through saving?
Navigation
Message Index
Next page

Go to full version