untitled-rhythm-game/js/libpointerfx.js
2025-04-22 19:51:14 +08:00

62 lines
2.2 KiB
JavaScript

(function() {
if(typeof PIXI!="object") {
if(typeof loadfail=="function") {
loadfail("libpointerfx.js: PIXI(type of "+(typeof PIXI)+") is not an object");
} else {
window.alert("libpointerfx.js: PIXI(type of "+(typeof PIXI)+") is not an object");
}
return;
}
if(typeof libmain!="object") {
if(typeof loadfail=="function") {
loadfail("libpointerfx.js: libmain(type of "+(typeof libmain)+") is not an object");
} else {
window.alert("libpointerfx.js: libmain(type of "+(typeof libmain)+") is not an object");
}
return;
}
var libpointerfx= {};
libpointerfx.fx_template_list=[];
libpointerfx.fx_instance_map= {};
libpointerfx.fx_template_chosen=new PIXI.Sprite();
var on_pointer_down=function(event) {
var pointer_id=event.pointerType+event.pointerId;
var fx_instance = libpointerfx.fx_template_chosen.clone();
fx_instance.anchor.copyFrom(libpointerfx.fx_template_chosen.anchor);
fx_instance.position.copyFrom(event.global);
fx_instance.animationSpeed = libpointerfx.fx_template_chosen.animationSpeed;
fx_instance.gotoAndPlay(0);
libpointerfx.fx_instance_map[pointer_id] = fx_instance;
libmain.scenes.pointer_fx.root.addChild(fx_instance);
};
var on_pointer_move=function(event) {
var pointer_id=event.pointerType+event.pointerId;
};
var on_pointer_up=function(event) {
var pointer_id=event.pointerType+event.pointerId;
};
libmain.scenes.pointer_fx.root.interactiveChildren=false;
libmain.scenes.pointer_fx.judge_rect.eventMode="static";
libmain.scenes.pointer_fx.judge_rect.on("pointerdown", on_pointer_down);
libmain.scenes.pointer_fx.judge_rect.on("pointermove", on_pointer_move);
libmain.scenes.pointer_fx.judge_rect.on("pointerup", on_pointer_up);
libmain.scenes.pointer_fx.judge_rect.on("pointerout", on_pointer_up);
libmain.scenes.pointer_fx.judge_rect.x=0;
libmain.scenes.pointer_fx.judge_rect.y=0;
libmain.scenes.pointer_fx.judge_rect.anchor.set(0, 0);
//libmain.settings.hud.show_pointerfx
window.libpointerfx=libpointerfx;
console.log("[libpointerfx] initialized successfully.");
})();