プログラミング PHP,PHPポケモン,ポケモン フィールド効果技編(しろいきり) PHPポケモン 50 フィールド効果技とは ポケモンの技の中には、ポケモンに対して状態変化や異常を与えるもの以外に、フィールド自体に効果を持たせるものがいくつかあります。PHPポケモンでは未実装ですが、そういったフィールド効果技はポケモンを交代したとしても場に効果が残り続けます。 場の状態(ポケモンwiki) https:/...
プログラミング PHP,PHPポケモン,ポケモン 構成見直し編(クラス名) PHPポケモン49 構成の見直し 今回は全体構成の見直しをします。ディレクトリについては変更ありませんが、ファイル名とクラス名について大幅な修正をかけていきます。 クラス名の重複回避 まず、クラス名の重複についてです。状態異常・状態変化の子クラスでは重複回避のために接頭語を着けて管理していましたが、他にも重複...
プログラミング PHP,PHPポケモン,ポケモン レベルアップ時のステータス表示編 PHPポケモン 48 ステータスの表示 前回経験値バーのアニメーションとレベルアップ時の動的な変更を実装しましたが、レベルアップ時に表示されるステータスの実装は先送りにしていました。なので今回はそのステータス表示を作成しましょう。 ステータスはメッセージとして返却せずに、小モーダルを起動させるという方法で対応しま...
プログラミング PHP,PHPポケモン,ポケモン 経験値取得アニメーション編(動画有り) PHPポケモン 47 経験値取得アニメーションの実装 最近は技の実装が続いていたので、気分転換にフロント側の演出づくりをしていきます。その中でも今回実装するのは「経験値取得アニメーション」です。 経験値バーはポケモンの第2世代から追加実装された演出です。初代では次のレベルにアップするまでの数値を、わざわざポケモンの...
プログラミング PHP,PHPポケモン,ポケモン そらをとぶ&あなをほる編 PHPポケモン46 チャージ中の回避技 以前は「ロケットずつき」や「ソーラービーム」をサンプルとしてチャージ技を実装しましたが、今回は少し特別な効果をもったチャージ技を実装します。それが「そらをとぶ」と「あなをほる」です。これらは初代ポケモンでも重宝される技であり、チャージ中に相手からの攻撃を回避することができま...
プログラミング PHP,PHPポケモン,ポケモン 命中率補正と交代技編 PHPポケモン 45 命中率補正とは ダメージ計算や行動順判定には補正(ランク)を計算した結果を反映していましたが、命中率補正についてはまだ未実装だったため、今回はこちらを作成していきたいと思います。 まずはwikiを参考に、計算方法を見ていきましょう。 命中(ポケモンwiki) https:// wiki.ポケモン.com/wiki/命中 第...
プログラミング PHP,PHPポケモン,ポケモン ブラウザで遊べる「PHPポケモン」 PHPポケモン 約1ヶ月半をかけて作り込んできたPHPポケモンですが、ある程度遊べるぐらいのレベルになったので、みなさまにも体験・楽しんでいただけるよう本日(2020年10月12日)より一般公開します。 PHPポケモンへのリンクは本記事の最後に用意しておりますので、プレイする前に注意事項等に目を通し...
プログラミング PHP,PHPポケモン,ポケモン HPバーアニメーション 後編 フロント側の対応 PHPポケモン 44 HPバーアニメーション それでは前回に続き、HPバーのアニメーションづくりをしていきましょう。前回、メッセージに合わせてレスポンスを返却するというサーバー側の仕組みを作成しました。なので、今回はそれをフロント側で受け取り、タイミングよくアニメーションで再現します。 フロント側(js)の処理 前回...
プログラミング PHP,PHPポケモン,ポケモン HPバーアニメーション前編 サーバー側の対応 PHPポケモン 43 動きのあるHPバーづくり それではデモ公開に先立ち、HPバーの作り込みをしていきたいと思います。 現在のPHPポケモンは、ダメージ計算などが終わった結果をすべて返却しているため、技選択をして次の画面に移行すると、HPが減った状態でスタートしていました。これでは、どの技でどれぐらいのダメージを与え、状態変...
プログラミング PHP,PHPポケモン,ポケモン いかり編 PHPポケモン 42 いかり(技)とは 2020年10月段階での最新シリーズである「ソード・シールド」では、今まであった技が使用不可能になっているものが数多くあります。その1つが「いかり」という技です。 いかり(ポケモンwiki) https://wiki.ポケモン.com/wiki/いかり 使えなくなっている技の中には、世代を経...
プログラミング PHP,PHPポケモン,ポケモン ダメージ固定技編(ちきゅうなげ・カウンター) PHPポケモン 41 ダメージ固定技とは PHPポケモンでも作成したダメージ計算機能ですが、ポケモンの技の中にはそれを必要としない技がいくつかあります。それが「固定ダメージ技」です。 ポケモンwiki(ダメージ固定技) https://wiki.ポケモン.com/wiki/ダメージ固定技 ステータスに依存せず、わざ自体にダメージ量が決...
プログラミング PHP,PHPポケモン,ポケモン 反動技編(はかいこうせん・とびひざげり)PHPポケモン40 反動技とは ポケモンでは反動技というものがあります。反動によっても様々で、現在の仕組みのままでも実装可能なものや、新たに処理が必要なものまであります。なので、一律で反動技という同じ処理は出来ません。 反動技(ポケモンwiki) https://wiki.ポケモン.com/wiki/反動技 反動技(はんどうわざ...
プログラミング PHP,PHPポケモン,オブジェクト指向,ポケモン ピカチュウから学ぶオブジェクト指向 〜進化編〜 7 ※前回(第6回)で意味不明な場所に空変数が入っており、ステータスが一部しか出力できないという問題がありました。修正しています。犯人は「$stats = [];」です。(GetTrait.php) 今回はポケモンのゲームでは欠かせない、楽しみの一つとなる「進化システム」を導入していきます。これからPHPポ...
雑記 アウトプットのための3つの習慣【3対7を成立させよう】 インプットとアウトプットの比率は3対7がベストだと言われています。 しかし、簡単にできるインプットに比べて、アウトプットは習慣化させておくことが大切です。それができていない人の多くが、膨大に本を読んだり学習に取り組んでも身につかず、趣味のレベルで終わってしまうのです。 今回は、そんな...
プログラミング PHP,WordPress 投稿タイトルを自動生成する方法【WordPressを便利にカスタマイズ】 カスタムフィールドを含む投稿の場合、わざわざタイトルを設定する必要がないものもあります。 そういったときに、カスタムフィールド値を使ってタイトルを自動生成してくれると楽ですし、一覧で見てもわかりやすい状態にすることができます。 今回はWordPressで「投稿タイトルを自動生成する方法」につ...
プログラミング JavaScript,児童デイ,児童発達支援,放課後等デイサービス,福祉,計算機 人員配置計算機〜放課後等デイサービス・児童発達支援〜 最近はずっとPHPポケモン開発にかかりっきりでしたが、そろそろ「役立つもの」を作りたくなったので、思いつきで作ってみました。 もちろん「汎用性」のあるものは、既に世の中に存在しているため、ありそうでなさそうなニッチなものを攻めてみます。 そんな中、今回挑んだのは「人員配置計算機」です。 ※実際に...
プログラミング PHP,PHPポケモン,ポケモン グローバル&ヘルパー関数編 PHPポケモン 61 進化や技習得、HPバーや経験値バーの演出ができているのに、なぜ状態異常の演出はされていないの? そう感じている方が少なからずいるはずです。 現段階では、状態異常になっても次の画面に移管しなければ表示されません。これは、PHP側で内部処理は行われているが、メッセージに合わせた動的な変更がされていな...
プログラミング PHP,PHPポケモン,ポケモン PHPポケモン「バトルシステム実装編〜補正値計算・乱数・急所〜」21 バトルシステムの実装 今回は「急所」と「乱数」と「タイプ一致」の判定と補正を実装していきます。 ちなみにですが、ポケモンwikiを熟読したところ、補正値の計算にも順番があり、計算後に小数点の切り捨てや五捨五超入をするなど、そこそこ複雑な計算順序がありましたが、今回はそこまで精密に再現せず、補正値(...
SEO対策 CSS,スタイルシート,レンダリング CSSとの意外な関係「よくわかるSEO対策」スタイルシート編 今回の「よくわかるSEO対策」はスタイルシート(CSS)編です。 多くの人が 「SEO対策なのに、CSSの説明をするの?」 と思うかも知れませんが、これには意外な関係性があったのです。 現在CSSを学んでいる人、そしてCSSの書き方ならマスターしているといった人でも、SEOのことまでを考慮した記述ができて...
プログラミング PHP,PHPポケモン,ポケモン 構成見直し編(クラス名) PHPポケモン49 構成の見直し 今回は全体構成の見直しをします。ディレクトリについては変更ありませんが、ファイル名とクラス名について大幅な修正をかけていきます。 クラス名の重複回避 まず、クラス名の重複についてです。状態異常・状態変化の子クラスでは重複回避のために接頭語を着けて管理していましたが、他にも重複...