Grundsätzlich ist dies nur eine Programmierfrage, wenn Sie dies abstrahieren. Wenn Sie dies wirklich mit Sprite-Blättern tun möchten, kann ich dies in einem schnellen Pseudocode im JavaScript-Stil tun ...
// -------------------------------------------------------------------------
// --- Array of sprite sheet offset for letter variants, indexed by letter
// --- Note that it would be pretty easy to dynamically generate sprite
// --- coordinates if you are certain your sheet has all the symbols you
// --- are looking for.
// -------------------------------------------------------------------------
var font_variants = [
{'a' : {x:0,y:0}, 'b' : {x:16, y:0}, 'c':{x:32, y:0}, ..., 'z':{x:400, y:0}},
{'a' : {x:0,y:16}, 'b' : {x:16, y:16}, 'c':{x:32, y:16}, ..., 'z':{x:400, y:16}},
{'a' : {x:0,y:32}, 'b' : {x:16, y:32}, 'c':{x:32, y:32}, ..., 'z':{x:400, y:32}}
];
// -------------------------------------------------------------------------
// --- Call this function with a string to render randomized style text
// -------------------------------------------------------------------------
function render_it (text) {
// --- Step through each letter in the text
for (var i=0; i<text.length; i++) {
// --- Randomly pick one of 3 variants
var r = Math.random(3);
// --- If letter is in our set, show it
if font_variants[r].hasOwnProperty(text[i]) {
// --- We have the letter
letter_sprite = get_letter_sprite(font_variants[r][text[i]].x, font_variants[r][text[i]].y);
// --- Display the letter here however you want to
} else {
// --- Requested letter not found
// --- Handle as you see fit
}
}
}
Ich habe nur ein Beispiel für Kleinbuchstaben eingegeben, sodass Sie bei Bedarf weitere hinzufügen müssen. Es wird auch eine Funktion "get_letter_sprite" angenommen, die bei Übergabe eines X- und Y-Offsets ein Sprite an der angegebenen Stelle von einem Sprite-Blatt (aus Buchstaben) zurückgibt.