キノコが何か作るブログ

ゲーム・ドット絵・アプリなどを作ります

MENU

phina.js

phina.jsでAsepriteのJSONを使ってみる

phina-aseprite-loaderを導入してみました。 pentamania.hatenablog.com Scriptの読み込み順を間違えた phina.jsを最初に読み込まないとダメなのに、loaderから読み込ませてしまった。 assetsの中にasepriteを書かないとダメ 素材のパスを間違えた いろいろ…

phina.jsでなぜか「Cannot read property 'setLoop' of undefined at Function.playMusic」とエラーが出る場合

//音楽を流す SoundManager.playMusic("bgm"); これで実行しすると Uncaught TypeError: Cannot read property 'setLoop' of undefined at Function.playMusicと出てエラーとなった。おかしい。今までこれで動いていたのに。 と思ったら、単純に"bgm"に入れ…

phina.jsでrot.jsの経路探索を使ってみよう

はじめに rot.jsのPathFinderの使い方 準備:マップを作る 経路探索を行う はじめに コード全体はこちらにあります。マップのseed値は固定です。 runstant.com ぶっちゃけ記事にするほどのことじゃないかなーと思ったのですが、公式マニュアルがあまり馴染み…

NW.jsだとCORS policyに引っ掛からないことに気づく

phina.jsでassetに音源を読み込ませようとするとこの様なエラーが出てゲームが始まりません。 音源を読み込む際にCORS policyというものに引っ掛かってしまうらしいです。 CORS policyについて調べましたがよくわかりませんでした。別オリジンのリソースにア…

【phina.js】自作SpriteクラスをRot.jsのゲームエンジンに登録する

Rot.jsのGameTurnEngineでもphina.jsのクラスが使えます。 自作クラスにactメソッドとhandleEventメソッドを持たせれば、phina.jsのクラスでもschedulerに追加して使うことができます。ソース全体 <html> <head> <meta charset='utf-8' /> <meta name="viewport" content="width=device-width, user-scalable=no" /> </meta></meta></head></html>

phina.jsでrot.jsのGameTurnEngineを実装してみる

今回参考にしたもの www.roguebasin.roguelikedevelopment.org www.roguebasin.roguelikedevelopment.org 英語でよくわからなかったのですが、書いてあることは大体こんな感じだと思います。 まずアクタークラスを作る Schedulerを作る Schedulerにアクター…

phina.jsでレトロゲー風インベントリ

phina.jsでレトロゲー風のインベントリを作りました。 ↓こういう感じの奴です。 runstant.com 今作っているゲームと全く同じものではありませんが、パパっと作ったので載せます。 一応一通りちゃんと動くはずですが、バグがあるかもしれません。バグがあった…

phina.jsを一通り使えるようになるまでにやったこと

はじめに 1.まずはテンプレートを動かしてみる 2.入門サイトを上から順にやってみる 3.とりあえず何か作ってみる 4.グループ管理を試してみる 5.SpriteSheetでアニメーションを付けてみる 6.phina.jsのクラスを学ぶ 7.シーン遷移を学ぶ 終わりに はじ…

(phina.js)好きなシーンへ遷移して引数も渡す方法

やり方phina.jsでは、this.exit();で現在のシーンを抜けて次のシーンへ移ることができます。 例えば、メインシーンと足し算をするシーンをこんな感じで定義をしたとします。 var myScenes = [ { label: 'main', className: 'MainScene', nextLabel: '', }, {…

phina.jsのbackgroundColorを透明にする方法

phina.jsのColorクラスにあるα値をいじれば透明になると思っていたのですが、それよりもっといい方法があったのでメモします。 backgroundColorが透明なオブジェクトの値をconsole.logで表示してみると「transparent」となっていました。 そのため、backgrou…

プライバシーポリシー