B-Teck!

お仕事からゲームまで幅広く

【JavaScript】ArrayLikeObjectをArrayに変換する

ArrayLikeObjctとは document.querySelectorAll()とかで戻り値になっているNodeListとかの型。 通常の配列のようにlengthとかを持っていたり、添字を使って各要素にアクセスできる。 でもArrayではないので、Arrayのメソッドとかは使えない。 そのままでは扱…

1年。

母親が死んで、1年が経った。 去年の今日は、普通にお祭りに行っていて、普通に遊んで帰って。 しかも週末を挟んで月曜日に会社に行って、 その帰り道に初めてそれを知ったんだったか。 生前の母は、割とすぐ生と死を持ち出すニンゲンだったので、 連絡が入…

【雑記】勉強

この前の日曜日、もう一度読む山川世界史という本を読み終わった。 いつだったかは失念してしまったけど、確か去年の暮れの頃に購入して、 半年以上かけてゆったり読んできた。 不思議なもので、ここ最近は勉強が楽しくて、 語学学習アプリのDuolingoを使っ…

【JavaScript】日付の妥当性をチェックする

正規表現でチェックして欲しい形式以外をふるいにかけた後、 Date型に突っ込んで突っ込む前と同じ年月日かを確認する。 これで欲しい形式以外は入ってこないし、変な日付が入ってきて無理やり変換されても 変換前との比較で判定できる。 別の形式も許容する…

【Java】半角カナ判定

正規表現 U+FF65「・」(半角カナ中黒)~U+FF9F「゚」(半角半濁点)の範囲で判定する。 細かい各メソッドの挙動とかは下記を参照。 https://docs.oracle.com/javase/jp/8/docs/api/java/util/regex/Pattern.html https://docs.oracle.com/javase/jp/8/docs/a…

【JavaScript】半角の文字を判定する

正規表現 半角文字列の判定として「/[^\x01-\x7E]/」を使う。 []の中に含まれる先頭のキャレット^は否定の意なので、 この場合はASCIIコードの「x01~x7Eの範囲外の文字列」という意味になる。 これだけではカナは含まれないため、同様に「/[^\uFF65-\uFF9F]/…

【Java】文字列の空白埋め、0埋め

String.formatで桁数を揃えたあとreplaceで空白を任意の文字に置き換えることで、0埋めができる。 public static void main (String[] args) throws java.lang.Exception { System.out.println(zeroPadding("12345",10)); // 0000012345 System.out.println(…

【JavaScript】JSの配列操作まとめ

配列の操作 配列の作成 配列の初期化 配列の要素数を取得 配列の最初と最後を取得 配列の要素を指定位置で切り出す 配列のループ 配列の先頭に要素を追加する 配列の末尾に要素を追加する 配列の値を削除する 配列の先頭の要素を取り出して元の配列から削除…

【ゲーム】バトルフィールド1で普段心がけていること

はじめに 昨年発売されたバトルフィールド1(PS4版)を未だにがっつりプレイしている。 基本オペ・コンクエ(たまにフロントライン)専門。 プレイ時間は100時間を超え、ランクも90台。そろそろ中堅を名乗っても良い頃だと思う。 今作は前作に比べて新規プレイヤ…

【VBA】与えられたパスのフォルダを新しく作成する

VBA

パスを指定してフォルダを作成する。 下記みたいな指定の場合でも存在しないパスごと作ってくれる。 MakeNotExistsDir("存在するパスA\存在しないパスA") MakeNotExistsDir("存在しないパスA\存在しないパスB\存在しないパスC") Option Explicit 'WindowsのA…

清く、正しく、残虐に!LET IT DIE

最近、PS4で配信された「LET IT DIE」をプレイしている。 海外では基本プレイ無料で配信されている本作だが、日本ではZ指定のため108円で配信されている。 結構好きなゲームなので紹介してみようと思う。 世界観 地殻変動によって東京に突如現れたバルブの塔…

BioShock Remasteredをクリアした

先月末からプレイしていたBioShockのリマスター版をクリアした。 実は、だいぶ昔に無印版を少しプレイしていたんだけど、なぜか続かずリマスター版が出るまで放置していた… ↓のんびりやったので18時間かかりました ↓所々にこういった海底の街が見える窓があ…

【PHP】 PHPで無名関数を使う

PHP

PHP5.3で導入された無名関数だけど、PHP7で記法がより簡潔になった。 その用法も含めてメモ書き。 無名関数の即時実行

友人がフリーゲームを製作中のようだ

大学時代の友達がゲーム作り始めてた。 というか去年の暮れに公開してた。 戦車で戦う防衛モノ。 タワーと拠点を守って敵を倒すぞ!みたいな。 ↓右のかっこいい球体が拠点、左のやつがタワー ある程度戦ってるとウェーブごとにボスが出てきて倒す。 現状は何…

【PHP】PHPの緩い比較とかの話

PHP

PHPの比較 PHPには、2つの変数が等しいことを比較する演算子が==と===で2つある。 ==は、暗黙的に型を相互変換した後に行われる比較。 ===は、型も含めた比較となる。 PHP: 比較演算子 - Manual 2a問題 暗黙的な型変換による比較というのは、多言語経験者か…

2017年になってました

今更ですが新年のご挨拶です。 去年は母の急逝然り、人間関係然り、後悔を残すことの多い一年でした。 人間、いつ何があるのかわからないなぁという感じで、 やろうと思ってることができなくなってしまうなんて当たり前にあるんですよね。 自分と向き合う時…

【VBA】パスワードのかかっていないExcelだけ開く

VBA

VBAからパスワードのかかったExcelファイルを開く際、普通にWorkbooks.Openするとパスワード入力ダイアログで止まってしまう。 この場合、パスワードを入力するかダイアログを閉じるまで実行中の処理が停止してしまう。 また、ダイアログを閉じた場合にはエ…

【VBA】配列をソートする

VBA

クイックソート アルゴリズムが少し複雑。早い。 C言語で文字列のクイックソート - テクメモ バブルソート アルゴリズムが簡単。あまり早くない。 バブルソート '/** ' * quickSort ' * 配列をクイックソートする ' * 大小比較できる型ならとりあえずソート…

【VBA】Dir関数で指定パスのサブフォルダを全て取得する

VBA

'/** ' * getTargetFolders ' * 与えられたパス配下のフォルダをサブフォルダまで配列で取得する ' * @param strDirectoryPath パス ' * @return フォルダ名のString配列 ' */ Function getTargetFolders(ByVal strDirectoryPath As String) As String() Dim…

【JavaScript】指定時間後や定期的に処理を実行する。

window.setInterval(function, delay) setIntervalは、functionに与えられた関数・処理をdelay(ms)ごとに繰り返す処理。 window.setTimeout(function, delay) setTimeoutは、functionに与えられた関数・処理をdelay(ms)後に実行する処理。 setIntervalで定義…

【JavaScript】Objectタグのdata要素を変更する

HTMLElement.setAttribute("data",変更後data要素)だとIEでうまくいかなかったので、 IEも対応する場合はObject要素自体のDOMをreplaceChildで置き換えてやる必要がある。 /** * changeObjectData * objectタグの表示内容を更新する * * @param {object} ele…

【VBA/Excel】Excelの印刷総ページ数を取得してCSVで出力する

VBA

Dir関数の注意 Windows由来の問題で3文字より長い拡張子を3文字に切り詰めるらしく、xlsでxlsxもxlsmも取れてしまうらしい。ヤバイ。 Office TANAKA - Excel VBA Tips[Dir関数の注意点] ページ数を取得するPageSetup.Pages.CountがExcel2007~2010でバグって…

【JavaScript】HTMLのテーブルをソートするsorTable.jsを作ってみました

github.com すでにあるのかもしれないけど、jQuery無しで動作するHTMLテーブルのソートのやつを作りました。 Git初心者なのでコミットログが汚い... とりあえず公開してみた状態なので、そのうち直したりしてみようかなと思ってます。 下記はデモページの埋…

【VBA】半角カナを判定する

VBA

Not (Mid(strInput, i, 1) Like "[ヲ-゚]" Or strInput = "-")で不要な文字種を除外。 ※"[ヲ-゚]“と”-“を指定するとカタカナひらがなの必要そうな文字列を抽出できる。 ”-“を半角カナに含みたくない場合はstrInput = "-"を外す。 その後StrConvで一度文字列を半角カ…

【VBA/Access】Option Compareステートメント

VBA

Accessでは、Option Compareステートメントによって文字列の比較方法が決定される。 モジュールを作成した際には自動でDatabaseモードが付加されるが、 この記述を削除し、何も書かなかった場合の既定値はBinaryモードとして定義されている。 モード 概要 Bi…

【JavaScript】ウインドウを閉じたとき子ウインドウも一緒に閉じる

ウインドウにモーダルじゃない子ウインドウがある時、閉じたら一緒に消えてほしかった。 IEでのみ動作確認済み。 コードでは1対1の親子関係しか定義してないけど、childWindowを配列にして突っ込んで、 each()とかmap()とかああいうので回せばいいと思う。 (…

【JavaScript/IE】ウインドウを閉じる

window.open()で開いたウインドウじゃないとか、window.close()だとなんか閉じれない環境があったので。 IE(とChrome)は下記のコードで動いた。 window.open('about:blank','_self').close();

【JavaScript/IE】ウインドウサイズの変更に合わせて拡大縮小する

onresize時にウインドウオープン時のウインドウサイズと現在のウインドウサイズの比率を取得し、 ドキュメントの拡大率を動的に変更する。 動作確認はIEのみで、他ブラウザでは正常に動作しないかも。 (function(){ window.addEventListener("resize",window…

【JavaScript/IE】ファンクションキーを無効化する

onload時にイベントを無効化することでファンクションキーを動作しないようにできる。 押下時の処理を別で定義することで、Webアプリケーションでもファンクションキーを用いたデスクトップアプリケーションライクな処理を再現できる。 動作確認はIEのみで、…

【雑記】母が死んだ話

とりとめなくポエミーに書く。