Snippets

Lucky Kat Bento Snippets

Created by Hernan Zhou last modified
<snippet>
    <content><![CDATA[
Clickable({
    pointerDown: function (data) {},
    pointerUp: function (data) {},
    pointerMove: function (data) {},
    // when clicking on the object
    onClick: function (data) {},
    onClickUp: function (data) {},
    onClickMiss: function (data) {},
    onHold: function (data) {},
    onHoldLeave: function (data) {},
    onHoldEnter: function (data) {},
    onHoldEnd: function (data) {},
    // desktop only
    onHoverLeave: function (data) {},
    onHoverEnter: function (data) {}
})
]]></content>
    <tabTrigger>Clickable</tabTrigger>
    <description>Bento Clickable component</description>
</snippet>
<snippet>
    <content><![CDATA[
ClickButton({
    z: ${1:0},
    name: '${2}',
    sfx: '${3}',
    imageName: '${4}',
    frameCountX: ${5:1},
    frameCountY: ${6:3},
    position: new Vector2(${7:0}, ${8:0}),
    float: ${9:false},
    updateWhenPaused: ${10:0},
    onClick: function () {
        ${11}
    }
});
]]></content>
    <tabTrigger>ClickButton</tabTrigger>
    <description>Bento ClickButton</description>
</snippet>
<snippet>
    <content><![CDATA[
/**
 * ${1:Component description}
 */
bento.define('${2}', [
    'bento',
    'bento/math/vector2',
    'bento/math/rectangle',
    'bento/entity',
    'bento/eventsystem',
    'bento/utils',
    'bento/tween'
], function (
    Bento,
    Vector2,
    Rectangle,
    Entity,
    EventSystem,
    Utils,
    Tween
) {
    'use strict';
    /**
     * Describe your settings object parameters
     * @param {Object} settings
     */
    return function (settings) {
        var viewport = Bento.getViewport();
        var entity;
        var component = {
            name: '${3}',
            start: function (data) {},
            destroy: function (data) {},
            update: function (data) {},
            draw: function (data) {},
            attached: function (data) {
                entity = data.entity;
            }
        };
        return component;
    };
});
]]></content>
    <tabTrigger>bento</tabTrigger>
    <description>Bento Component Module</description>
</snippet>
<snippet>
    <!-- A standard bento define snippet with sprite and entity to fill in -->
    <content><![CDATA[
/**
 * ${1:Module description}
 */
bento.define('${2}', [
    'bento',
    'bento/math/vector2',
    'bento/math/rectangle',
    'bento/components/sprite',
    'bento/components/clickable',
    'bento/entity',
    'bento/eventsystem',
    'bento/gui/clickbutton',
    'bento/gui/counter',
    'bento/gui/text',
    'bento/utils',
    'bento/tween'
], function (
    Bento,
    Vector2,
    Rectangle,
    Sprite,
    Clickable,
    Entity,
    EventSystem,
    ClickButton,
    Counter,
    Text,
    Utils,
    Tween
) {
    'use strict';
    return function (settings) {
        /*settings = {
            // describe your settings object parameters
            position: Vector2 // positions the entity
        }*/
        var viewport = Bento.getViewport();
        var sprite = new Sprite({
            imageName: '${3}',
            frameCountX: 1,
            frameCountY: 1,
            animations: {
                default: {
                    speed: 0,
                    frames: [0]
                }
            }
        });
        var behavior = {
            name: '${4:behaviorComponent}',
            start: function (data) {},
            destroy: function (data) {},
            update: function (data) {},
            draw: function (data) {}
        };
        var entity = new Entity({
            z: 0,
            name: '${5}',
            family: [''],
            position: settings.position || new Vector2(0, 0),
            originRelative: new Vector2(0, 0),
            updateWhenPaused: 0,
            components: [
                sprite,
                behavior
            ]
        });
        return entity;
    };
});
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <tabTrigger>bento</tabTrigger>
    <description>Bento Entity Definition</description>
</snippet>
<snippet>
    <!-- A standard bento screen define snippet -->
    <content><![CDATA[
/**
 * ${1:Screen description}
 */
bento.define('${2}', [
    'bento',
    'bento/math/vector2',
    'bento/math/rectangle',
    'bento/components/sprite',
    'bento/components/clickable',
    'bento/entity',
    'bento/eventsystem',
    'bento/gui/clickbutton',
    'bento/gui/counter',
    'bento/gui/text',
    'bento/utils',
    'bento/screen',
    'bento/tween'
], function (
    Bento,
    Vector2,
    Rectangle,
    Sprite,
    Clickable,
    Entity,
    EventSystem,
    ClickButton,
    Counter,
    Text,
    Utils,
    Screen,
    Tween
) {
    'use strict';
    var onShow = function (data) {
        ${3:/* Screen starts here */}
    };

    return new Screen({
        onShow: onShow
    });
});
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <tabTrigger>bento</tabTrigger>
    <description>Bento Screen Definition</description>
    <!-- <scope>source.python</scope> -->
</snippet>
<snippet>
    <content><![CDATA[
Utils.forEach(${1:array}, function (${2:item}, i, l, breakLoop) {
    ${3:// code here}
});
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <tabTrigger>forEach</tabTrigger>
    <!-- Optional: Set a scope to limit where the snippet will trigger -->
    <!-- <scope>source.python</scope> -->
</snippet>
<snippet>
    <content><![CDATA[
Sprite({
    imageName: '${1}',
    frameCountX: ${2: 1},
    frameCountY: ${3: 1},
    animations: {
        default: {
            speed: 0,
            frames: [0]
        }
    }
});
]]></content>
    <tabTrigger>Sprite</tabTrigger>
    <description>Bento Sprite component</description>
</snippet>
<snippet>
    <content><![CDATA[
Text({
    z: ${1:0},
    position: new Vector2(${2:0}, ${3:0}),
    text: '${4}',
    font: '${5:font}',
    fontSize: ${6:16},
    fontColor: '${7:#ffffff}',
    align: '${8:left}',
    textBaseline: '${9:bottom}',
    ySpacing: ${10:0},
    lineWidth: ${11:0},
    strokeStyle: '${12:#000000}',
    innerStroke: ${13:false},
    pixelStroke: ${14:false} // workaround for Cocoon bug
});
]]></content>
    <tabTrigger>Text</tabTrigger>
    <description>Bento Text</description>
</snippet>
<snippet>
    <content><![CDATA[
Tween({
    from: ${1:0},
    to: ${2:1},
    'in': ${3:60},
    ease: ${4:Tween.LINEAR},
    onUpdate: function (v, t) {
        ${5}
    },
    onComplete: function () {
        ${6}
    }
});
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <tabTrigger>Tween</tabTrigger>
</snippet>
<snippet>
	<content><![CDATA[
/**
 * [what it does]
 * @function
 * @instance
 * @name [function name]
 */
]]></content>
	<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
	<tabTrigger>description-function</tabTrigger>
</snippet>

Comments (0)

HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.