RSS便利だよね。

なんとなくでPixivのRSSが欲しくなったから作成するPHPを作成中。
EclipseにPDT入れたら、すごい数のプラグインが付いてきた…今回そんなに使わないよ…
とりあえず、Pixivから投稿イラストデータの回収は成功。
非ログイン状態だと最新データを収集できないから、ログイン処理をする必要があるのか?

SES2開発中。

会話部分のプログラムを書いてみた。
書いてる途中でニコ鉄のスクリプトと似ててちと凹んだ…あれ、あとで修正するの面倒なんだよな…
ついでにWindowsでもコンパイル。コンパイルついでにキャラクターリストとか渡すようにしたらSegmentation fault…orz
1時間悩んでたどり着いた原因がはStage1::Stage1(Characters *characters,Ballets *ballets,Items *items):StageBase(1,characters,ballets,items){がStage1::Stage1(Characters *characters,Ballets *ballets,Items *itmes):StageBase(1,characters,ballets,items){になってるせいだった。
ちくしょう…orz

SkinClock,SkinMakerのソースコード公開

SkinClockとSkinMakerのソースコードを公開。
wxWidgetsのライセンス見ると、wxWidgetsライセンスとLGPLライセンスのデュアルだったから今回はLGPLの方を選択。つかwxWidgetsライセンスってGPLと何か違うのか?
ついでにカウンターも更新。今まで途切れてたGoogleからのリファラーを正確に取得できるようになった。はず。
SES2もちょこちょこ更新。
設定画面と切り替えができた。この段階でソースコードが87KBを超えた…(コメント付)
最終的にはどこまででかくなるんだろ。

SkinClock,SkinMakerソース公開準備中

昨日のiconvの問題が解決したから、ソース公開準備開始。

AC_CHECK_LIB([iconv],[libiconv])

で判断しないと失敗するっぽい。ただ、Linuxの場合はglibcがすでに持ってるからAC_CHECK_FUNC([iconv])でも通る。環境ごとに分けるのも面倒だから、

AC_CHECK_FUNC([iconv],[],[AC_CHECK_LIB([iconv],[iconv],[],[AC_CHECK_LIB([iconv],[libiconv])])])

でどんどん検査するようにした。

何があったんだ…

会社の昼休みに、何気なくボットのサイトのぞきに行ったら、カウンターが6万を超えてた…
割といい加減なカウンターで機能不全になることがしょっちゅうだから帰って確認しようと思ったら早速機能不全…
え、あの数値は何なの?スパム?バグ?
追記:アクセスできた。で、結果は
Total Visitors: 53
Total Hits: 141
バグっぽいね。

SkinClock用スキン2個追加公開

SkinClockの初期の頃から使ってたスキンの公開許可をもらったんで、今日公開開始。
公開したスキンは
エルルゥスキン
エルルゥスキン

霊烏路空スキン
霊烏路空スキン
の二つ。
エルルゥスキンはリシヨウ氏に頼んだら書いてくれたので作ったスキン。これも昨日公開許可を得たもの。
霊烏路空スキンはリシヨウ氏がpixivにアップロードした画像を無断拝借&無断改造して作った、SkinClockの原型からの延長。昨日公開許可を得た。
…自分でもなんか描かなきゃなぁwww

SES2,SkinClock開発中。

今日一日SkinClockとSES2の開発をしてた。
SkinClockはバージョン1.20がほぼ出来上がり。明日Windowsでコンパイルしてデバッグ予定。
SES2はautoconfスクリプトとautomake書いてコンパイル。
SDL_ttfのリンクコード書いてないからリンクは完了しないけど、コンパイルエラーはつぶし切れた。
アイテムと弾丸に関しては大量確保&大量解放の連発でいちいちメモリ処理してると遅くなりそうだから、未使用オブジェクト管理クラスを書いた。すぐには解放しないからメモリドカ食い仕様だけど…
あと、管理クラスをテンプレートクラスにして弾丸管理クラスとアイテム管理クラスを別々にしようとしたら、テンプレートの仕様にしばらくハマった…
まず、

ItemFactory::ItemFactory():Factory<Item *>(){
}

といったコードを書いたら、Factory<Item *>が無いと言われた。ググッてみると、ItemFactory.cppをコンパイルするときにFactory.cppを見ないから、Factory<Item *>()が解決できないんだそうな。これは、Factoryクラスを.hファイルで実装することで解決。
次に

typename std::list<T>::iterator object_iterator=this->nouse.begin();

これ。テンプレートクラスでイテレーターを取る場合、typenameを付けないといけないっぽい。
久しぶりにdoxygen入れてみた。いつの間に検索機能なんて付いたんだ?こいつ