<commit_before>
import luxe.Vector;
import luxe.Input;
import luxe.Text;
import luxe.Color;
import luxe.Rectangle;

import phoenix.BitmapFont;
import phoenix.Batcher;
import phoenix.geometry.TextGeometry;


class Main extends luxe.Game {

    var dttext : TextGeometry;
    var batcher : Batcher;


    override function config(c:luxe.AppConfig) {
        // c.window.antialiasing = 2;
        return c;
    }

    override function ready() {

        // Luxe.renderer.clear_color.set(1,1,1,1);

        var drag = Luxe.camera.add( new CameraDrag({name:'drag'}) );
            drag.zoom_speed = 0.05;

        setup();

        dttext = new TextGeometry({
            pos: new Vector(10,10),
            point_size: 16,
            batcher: Luxe.renderer.batcher
        });

    } //ready

    override function onkeyup( e:KeyEvent ) {

        if(e.keycode == Key.escape) {
            Luxe.shutdown();
        }

    } //onkeyup

    override function update(dt:Float) {

        dttext.text = '$dt';

    } //update

    function setup() {

            for(i in 0 ... 16) {

                var _s = 8 + (i * 4);
                var _s_prev = 8 + (i-1 * 4);
                var _t = '${_s} : luxe is a free, open source cross platform game engine';
                var _text = new TextGeometry({
                    color: new Color(1,1,1,1),
                    text: _t,
                    pos: new Vector(100,130 + (i * (1.2*Luxe.renderer.font.height_of(_t, _s_prev)))),
                    batcher: Luxe.renderer.batcher,
                    point_size: _s,
                });

            }

            //Some don't need to exist in the default scene
            //so we can tell it not to add them there with no_scene : true

            //Create three horizontally aligned texts, pos based<commit_msg>Tests; text; update for latest text geom changes<commit_after>
import luxe.Vector;
import luxe.Input;
import luxe.Text;
import luxe.Color;
import luxe.Rectangle;

import phoenix.BitmapFont;
import phoenix.Batcher;
import phoenix.geometry.TextGeometry;


class Main extends luxe.Game {

    var dtl : TextGeometry;
    var dtr : TextGeometry;
    var dtc : TextGeometry;

    var batcher : Batcher;


    override function config(c:luxe.AppConfig) {
        // c.window.antialiasing = 2;
        return c;
    }

    override function ready() {

        // Luxe.renderer.clear_color.set(1,1,1,1);

        var drag = Luxe.camera.add( new CameraDrag({name:'drag'}) );
            drag.zoom_speed = 0.05;

        setup();

        Luxe.draw.line({
            p0:new Vector(120,0),
            p1:new Vector(120,100)
        });

        dtl = new TextGeometry({
            pos: new Vector(120,10),
            align: left,
            point_size: 16,
            batcher: Luxe.renderer.batcher
        });

        dtc = new TextGeometry({
            pos: new Vector(120,42),
            align: center,
            point_size: 16,
            batcher: Luxe.renderer.batcher
        });

        dtr = new TextGeometry({
            pos: new Vector(120,74),
            align: right,
            point_size: 16,
            batcher: Luxe.renderer.batcher
        });

    } //ready

    override function onkeyup( e:KeyEvent ) {

        if(e.keycode == Key.escape) {
            Luxe.shutdown();
        }

    } //onkeyup

    override function update(dt:Float) {

        dtl.text = 'left\n$dt';
        dtr.text = 'right\n$dt';
        dtc.text = 'center\n$dt';

    } //update

    function setup() {

            for(i in 0 ... 16) {

                var _s = 8 + (i * 4);
                var _s_prev = 8 + (i-1 * 4);
                var _t = '${_s} : luxe is a free, open source cross platform game engine';
                var _text = new TextGeometry({
                    color: new Color(1,1,1,1),
                    text: _t,
                    pos: new Vector(100,130 + (i * (1.2*Luxe.renderer.font.height_of(_t, _s_prev)))),
                    batcher: Luxe.renderer.batcher,
                    point_size: _s,
                });

            }

            //Some don't need to exist in the default scene
            //so we can tell it not to add them there with no_scene : true

            //Create three horizontally aligned texts, pos based
{'fraction_non_alphanumeric': 0.1133177570093458, 'fraction_numerical': 0.02219626168224299, 'mean_word_length': 1.58983666061706, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6937101', 'n_tokens_mistral': 1406, 'n_tokens_neox': 1287, 'n_words': 343}