/* * Verrückte Turing-Maschinen — A turing complete game * Copyright (C) 2016 Christian Fraß * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ module mod_vtm { export module mod_manifestation { export module mod_svg { export module mod_aktor { /** * @author kcf */ lib_brauch.umsetzen ( brauch_aktor, "leser", { "darstellen": ({"angaben": {"richtung": richtung, "symbol_links": symbol_links, "symbol_rechts": symbol_rechts}}) => { let kinder : Array = []; type typ_eintrag = { summand : mod_vtm.mod_aufbau.mod_richtung.typ_richtung; symbol : lib_fehlermonade.typ_fehlermonade; } ; let ausgaenge : Array = [ { "summand": 0, "symbol": lib_fehlermonade.erstellen_nichts(), }, { "summand": +2, "symbol": lib_fehlermonade.erstellen_schlicht(symbol_links), }, { "summand": -2, "symbol": lib_fehlermonade.erstellen_schlicht(symbol_rechts), }, ] ; ausgaenge.forEach ( eintrag => { let winkelstaerke : float = (mod_vtm.mod_aufbau.mod_richtung.addieren(richtung, eintrag.summand) / 6); let knoten_pfeil : lib_xml.typ_knoten = ( lib_xml.erstellen_normal ( "path", { "d": form_pfeil, "class": ( [ "pfeil", ( lib_fehlermonade.voll(eintrag.symbol) ? "symbol_" + lib_fehlermonade.lesen(eintrag.symbol).toFixed(0) : "neutral" ), ].join(" ") ), "transform": ( [ rotation(winkelstaerke), translation(+0.1, 0), skalierung(0.075), ].join(" ") ), } ) ); kinder.push(knoten_pfeil); } ) ; return kinder; } , } ) ; } } } }