1.0.0 • Published 2 years ago

@futoshi-ahwatukee/akashic-clipboard-plugin v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

akashic-clipboard-plugin

akashic-clipboard-plugin はクライアントのクリップボード上のデータにアクセスするためのAkashic Engine用プラグインです。 ゆくゆくはクリップボードに格納したりとかMIMEタイプごとの挙動をしたりとかと多目的汎用的なプラグインにしていきたいではありますが、いまのところgetといったら入ってるものを渡すだけのシンプルなとってこい犬です。

動作

× コピー(格納)→できません 〇 ペースト(取得)→get()メソッドによって行います。ただし、ブラウザ動作同様となるうえユーザー許可に細かく対応していないため不可とされたらそれまでです。

動作環境: デバッグ(サンドボックス)では動いてました。実環境(生配信ゲームとして)はどうだかね。

使い方

  1. このプラグインを利用したいコンテンツのディレクトリ下で以下のようにコマンドを実行します。
akashic install --plugin 334 @futoshi-ahwatukee/akashic-clipboard-plugin

上記の例では --plugin に 334 を指定していますが、これは阪神タイガースには関係ありません。別の値にして構いません。

もしも上記コマンドの実行に失敗した場合は、コンテンツのディレクトリ下で以下のコマンド実行と コンテンツの game.json の手動での書き換えを行います。 ってか現バージョンって絶対エラー出ません?ダミースクリプトパスを指定して落ちるの回避してるらしいけどソイツがないってエラーは出続けてるんですけど…どうすりゃいいのコレ…

npm install --save-dev @futoshi-ahwatukee/akashic-clipboard-plugin
// 以下game.jsonの内容
{
	...,
+	"operationPlugins": [
+		{
+			"code": 334,
+			"script": "./node_modules/@futoshi-ahwatukee/akashic-clipboard-plugin/lib/index.js",
+		}
+	],
	"globalScripts": [
		...,
+		"node_modules/@futoshi-ahwatukee/akashic-clipboard-plugin/lib/index.js"
	],
	...
}
  1. get()メソッドで取得するだけです。サーバー側は関係ないだけでなく対象外となるためサーバー側を除外するif文はつけておいてください
	// 
    const plugin = g.game.operationPlugins[334];
    if (typeof plugin !== "undefined") {
        // operationTriggerにクリップボード取得(貼り付け)処理を追加記述してください。
        plugin.operationTrigger.add(clipText => {
            console.log(clipText);
        });
        // 取得する際にgetで呼びます(あまりにも作りがダサいのでこれは将来的に変えるかもです)
        button_clipboard.onPointDown.add(() => {
            plugin.get();
        });
    }
1.0.0

2 years ago