UNPKG

visual-js

Version:

[3.0.26] Prepare for npm usage. Special integration for matrix engine 1.9.0 Thunder.

197 lines (139 loc) 6.02 kB
/** * This is part of visual-js canvas2d game engine * important : Use on more ways * Free for use */ var SMODULE = HELLO_WORLD.ENGINE.MODULES.ACCESS_MODULE("STARTER"); SMODULE.NEW_OBJECT("IamPathGameObject", 10, 10, SYS.MATH.CONVERT.PIX_TO_PER(100), SYS.MATH.CONVERT.PIY_TO_PER(100), 1); IamPathGameObject.CREATE_PENCIL(); SMODULE.NEW_OBJECT("HOLDER", 10, 5, 36, 32, 1); HOLDER.CUSTOM = function () { SURF.fillStyle = "rgba(0,64,128,0.7)"; SURF.fillRect(this.POSITION.X(), this.POSITION.Y(), this.DIMENSION.WIDTH(), this.DIMENSION.HEIGHT()); }; HOLDER.TYPE_OF_GAME_OBJECT = "CUSTOM"; SMODULE.NEW_OBJECT("REC_PATH", 10, 8, 18, 5, 1); REC_PATH.CREATE_TEXTBOX("Stop Recording", 10, "black", "red"); REC_PATH.TEXTBOX.EDIT = false; REC_PATH.TEXTBOX.font = "13px Arial"; SMODULE.NEW_OBJECT("PATH__CLEAR", 28, 8, 18, 5, 1); PATH__CLEAR.CREATE_TEXTBOX("Clear and Start Recording after 3s", 10, "black", "red"); PATH__CLEAR.TEXTBOX.EDIT = false; PATH__CLEAR.TEXTBOX.font = "13px Arial"; SMODULE.NEW_OBJECT("SWITH_DRAW_TYPE", 10, 13, 18, 5, 1); SWITH_DRAW_TYPE.CREATE_TEXTBOX("Draw type : POINTS ", 10, "black", "red"); SWITH_DRAW_TYPE.TEXTBOX.EDIT = false; SWITH_DRAW_TYPE.TEXTBOX.font = "13px Arial"; SMODULE.NEW_OBJECT("NAME_FOR_SAVE", 28, 13, 18, 5, 1); NAME_FOR_SAVE.CREATE_TEXTBOX("Enter name here", 10, "black", "lime"); NAME_FOR_SAVE.TEXTBOX.EDIT = true; NAME_FOR_SAVE.TEXTBOX.font = "13px Arial"; SMODULE.NEW_OBJECT("SAVE_TO_LS", 28, 18, 18, 5, 1); SAVE_TO_LS.CREATE_TEXTBOX("Save to localstorage", 10, "black", "green"); SAVE_TO_LS.TEXTBOX.EDIT = false; SAVE_TO_LS.TEXTBOX.font = "13px Arial"; SMODULE.NEW_OBJECT("SWITH_RECORD_TYPE", 10, 18, 18, 5, 1); SWITH_RECORD_TYPE.CREATE_TEXTBOX("ON_MOUSE_MOVE", 10, "black", "green"); SWITH_RECORD_TYPE.TEXTBOX.EDIT = false; SWITH_RECORD_TYPE.TEXTBOX.font = "13px Arial"; SMODULE.NEW_OBJECT("__CLEAR", 10, 23, 18, 5, 1); __CLEAR.CREATE_TEXTBOX("Pencil clear", 10, "black", "green"); __CLEAR.TEXTBOX.EDIT = false; __CLEAR.TEXTBOX.font = "13px Arial"; __CLEAR.TAP = function () { IamPathGameObject.PENCIL.CLEAR(); }; SAVE_TO_LS.TAP = function () { IamPathGameObject.PENCIL.SAVE_DRAWS(NAME_FOR_SAVE.TEXTBOX.TEXT); }; SMODULE.NEW_OBJECT("dataAboutPencil", 10, 28, 36, 5, 1); dataAboutPencil.CREATE_TEXTBOX("Pencil control", 10, "black", "green"); dataAboutPencil.TEXTBOX.EDIT = false; dataAboutPencil.TEXTBOX.font = "13px Arial"; dataAboutPencil.ON_UPDATE_SYS = function () { dataAboutPencil.TEXTBOX.TEXT = "Buffer size:" + IamPathGameObject.PENCIL.PATH.length + " . Keep low value < 1000 ."; }; //dataAboutPencil.TEXTBOX.TEXT = IamPathGameObject.PENCIL.PATH.length; SWITH_DRAW_TYPE.status_ = 0; SWITH_DRAW_TYPE.TAP = function () { if (SWITH_DRAW_TYPE.status_ == 0) { IamPathGameObject.PENCIL.DRAW_TYPE("LINES"); SWITH_DRAW_TYPE.TEXTBOX.TEXT = "Draw type - LINES"; SWITH_DRAW_TYPE.status_ = 1; } else if (SWITH_DRAW_TYPE.status_ == 1) { IamPathGameObject.PENCIL.DRAW_TYPE("STRIP_LINES"); SWITH_DRAW_TYPE.TEXTBOX.TEXT = "Draw type - STRIP_LINES"; SWITH_DRAW_TYPE.status_ = 2; } else if (SWITH_DRAW_TYPE.status_ == 2) { IamPathGameObject.PENCIL.DRAW_TYPE("STRIP_LINES2"); SWITH_DRAW_TYPE.TEXTBOX.TEXT = "Draw type - STRIP_LINES2"; SWITH_DRAW_TYPE.status_ = 3; } else if (SWITH_DRAW_TYPE.status_ == 3) { IamPathGameObject.PENCIL.DRAW_TYPE("BALLS"); SWITH_DRAW_TYPE.TEXTBOX.TEXT = "Draw type - BALLS"; SWITH_DRAW_TYPE.status_ = 0; } }; SWITH_RECORD_TYPE.status = 0; SWITH_RECORD_TYPE.TAP = function () { if (SWITH_RECORD_TYPE.status == 0) { IamPathGameObject.PENCIL.RECORD_TYPE("ON_TAP"); SWITH_RECORD_TYPE.TEXTBOX.TEXT = "Rec on leftClick - right stops "; SWITH_RECORD_TYPE.status = 1; } else if (SWITH_RECORD_TYPE.status == 1) { IamPathGameObject.PENCIL.RECORD_TYPE("EVERY_POINT"); SWITH_RECORD_TYPE.TEXTBOX.TEXT = "Rec on touchMove"; SWITH_RECORD_TYPE.status = 0; } }; PATH__CLEAR.TAP = function () { IamPathGameObject.PENCIL.RECORD = false; IamPathGameObject.PENCIL.CLEAR(); IamPathGameObject.ON_UPDATE_SYS = IamPathGameObject.ON_UPDATE_SYS_RECORD_ONLY_TAP; //clear colector setTimeout(function () { IamPathGameObject.PENCIL.RECORD = true; REC_PATH.TEXTBOX.TEXT = "Stop recording"; }, 3000); }; REC_PATH.status = 0; REC_PATH.TAP = function () { if (REC_PATH.status == 0) { IamPathGameObject.PENCIL.RECORD = false; REC_PATH.TEXTBOX.TEXT = "Start recording for 3s"; REC_PATH.status = 1; } else if (REC_PATH.status == 1) { REC_PATH.status = 100; REC_PATH.TEXTBOX.TEXT = "Stop recording for 3s"; setTimeout(function () { IamPathGameObject.PENCIL.RECORD = true; REC_PATH.status = 0; }, 3000); } }; HOLDER.GROUP.ADD(dataAboutPencil.NAME); HOLDER.GROUP.ADD(SWITH_DRAW_TYPE.NAME); HOLDER.GROUP.ADD(SWITH_RECORD_TYPE.NAME); HOLDER.GROUP.ADD(REC_PATH.NAME); HOLDER.GROUP.ADD(PATH__CLEAR.NAME); HOLDER.GROUP.ADD(__CLEAR.NAME); HOLDER.GROUP.ADD(NAME_FOR_SAVE.NAME); HOLDER.GROUP.ADD(SAVE_TO_LS.NAME); setTimeout(function () {}, 2111); function RECORD_PENCIL() { delete IamPathGameObject.PENCIL; IamPathGameObject.CREATE_PENCIL(); try { NIK.recognition.stop(); } catch (e) {} setTimeout(function () { NIK = new SYS.VOICE.LISTEN("remember", SAVE_PENCIL); }, 1000); } function SAVE_PENCIL() { IamPathGameObject.PENCIL.SAVE_DRAWS("NIDZA12"); NIK.recognition.stop(); delete IamPathGameObject.PENCIL; IamPathGameObject.CREATE_PENCIL(); NIK = new SYS.VOICE.LISTEN("record", RECORD_PENCIL); } var NIK = new SYS.VOICE.LISTEN("record", RECORD_PENCIL);