[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2ch.scのread.cgiへ]
Update time : 12/27 13:24 / Filesize : 200 KB / Number-of Response : 922
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ニートです1からプログラミングを教えてくれる



1 名前:たかし [2015/12/25(金) 18:43:55.48 .net]
先生を募集します

先生!!

460 名前:takasi mailto:sage [2016/01/11(月) 20:23:30.63 .net]
>>456
課題終わったら使ってみます!

思ったより頭が働いてないので少し時間かかります

461 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/11(月) 20:29:58.66 .net]
リソースデータは名前で参照する。名前が重要だ。
どのリソースを使うかは、名前で決めないといけない。

462 名前:仕様書無しさん mailto:sage [2016/01/11(月) 20:36:45.79 .net]
>>460
気が向いたらでおkっす

463 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/11(月) 21:01:55.05 .net]
ヒント:ボタンのクリック処理を関数で共通化

464 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/11(月) 21:06:36.41 .net]
ヒント:勝ち負け判定関数

465 名前:takasi mailto:sage [2016/01/11(月) 21:11:19.73 .net]
最序盤でつまづいています
スタートボタンを押して開始→手をクリック→手を受け取り条件分岐
こういう流れで行きたいのですが
えーまず、メインのジャンケンの処理をどこに記述すればよいのかで混乱しています

466 名前:takasi mailto:sage [2016/01/11(月) 21:17:10.61 .net]
頭のなかではこんな感じなのですがhttps://i.gyazo.com/18d3d208948dbd5047961437a72d9359.png
実装の仕方がわからず・・・
さっさと質問しとけばよかったですすみません

467 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/11(月) 21:20:18.45 .net]
... button1_click(...) {
show_hand(1);
}
... button2_click(...) {
show_hand(2);
}
... button3_click(...) {
show_hand(3);
}
void show_hand(int player_hand) {
int comp_hand = get_comp_hand();
...手を表示する処理をここに書く...
switch(hantei(player_hand, comp_hand)) {
...勝ち負けを表示...
}
}

468 名前:takasi mailto:sage [2016/01/11(月) 21:24:17.30 .net]
ありがとうございます
分からなかったらまた聞きます
行ってきます



469 名前:takasi mailto:sage [2016/01/11(月) 22:30:37.72 .net]
今日中に終わらなそうです

470 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/11(月) 22:32:51.24 .net]
残りは明日にするか。
どこまでできた?

471 名前:takasi mailto:sage [2016/01/11(月) 22:42:42.02 .net]
判定して結果を表示させる所まで来ました
あとはあいこのループ処理と画像の表示と音声のタイミングが合ってないのでそれを直すことです

472 名前:takasi mailto:sage [2016/01/11(月) 22:46:06.33 .net]
・スタートおした時のジャンケンポンの効果音
・判定後のスタートをリセット
・画像のサイズをあわせる
まだまだありました

473 名前:takasi mailto:sage [2016/01/11(月) 22:46:37.45 .net]
明日の授業までに終わらせておきます

474 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/11(月) 22:48:43.00 .net]
PlaySyncを使うとそこで処理が動かなくなる。
画像を変えるなら再生の前にするとよい。
一方、Playは非同期で動く。
非同期再生処理のタイミングを調整したいなら、スレッドを使うことになる。

475 名前:takasi mailto:sage [2016/01/11(月) 22:51:07.18 .net]
分かりました
頭をすっきりさせるためにお風呂に入ってきます

476 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/11(月) 22:51:07.43 .net]
今日もよくがんばった。おやすみ。

477 名前:takasi mailto:sage [2016/01/11(月) 22:51:32.48 .net]
本日もありがとうございました!!おやすみなさい

478 名前:takasi mailto:sage [2016/01/12(火) 00:56:08.92 .net]
>>454
なんとか完成しました

今までは一つのメソッドに処理書いていたので楽でしたが
今回はメソッド同士の値の受け渡し?などがよく分かってなくて難しかったです
数こなしてなれるしか無いですね



479 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/12(火) 11:11:05.72 .net]
>>478
add, commit, pushしてから、Githubでプルリクしなさい。

480 名前:takasi mailto:sage [2016/01/12(火) 16:48:13.54 .net]
おはようございます
プルリクエストしてみました。ちゃんとできていますでしょうか
体調不良のため途中で離脱するかもしれません

481 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/12(火) 17:14:09.31 .net]
今日の勉強会は休みにします。

482 名前:takasi mailto:sage [2016/01/12(火) 17:20:28.56 .net]
分かりました、自習します

483 名前:仕様書無しさん mailto:sage [2016/01/12(火) 18:49:16.21 .net]
先生、たかし君のペースでいいので是非データベースとの連携もご教示ください!

484 名前:takasi mailto:sage [2016/01/13(水) 13:50:41.92 .net]
病院行こうと思ったら午前で終わってました
おはようございます

485 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 19:10:53.68 .net]
ジャンケンゲームの続きだ。
https://github.com/katahiromz/JankenGUI
これを適当なフォルダにcloneしてソースを眺めてみよ。

486 名前:takasi mailto:sage [2016/01/13(水) 19:26:21.36 .net]
おはようございます
始めます

487 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 19:32:23.31 .net]
Visibleプロパティをfalseにすると非表示になる。
SoundPlayer.Stopで音を止めることができる。

488 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 19:37:24.49 .net]
コードを読んだ感想を述べよ。



489 名前:takasi mailto:sage [2016/01/13(水) 19:47:25.22 .net]
僕のぐっちゃぐちゃなコードに比べるとすごく綺麗にまとまっていて
これはどういう動作をするコードなのかひと目で分かります
条件分岐の負けの判定の仕方でelse if ((3 + player_hand - comp_hand) % 3 == 1)
を見てこれはすげえと思いました
全体のコード量は少ないですが、すっきりしていて感動しました
そして自分にこんな綺麗に書ける自信が無くて胃が痛くなりました

490 名前:takasi mailto:sage [2016/01/13(水) 19:49:19.08 .net]
こういうやり方もあるのかと色々発見がありました
以上、小学生並みの感想文でした

491 名前:takasi mailto:sage [2016/01/13(水) 19:52:11.35 .net]
あとじゃんけんゲームがなかなかおもしろいです

492 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 19:57:19.20 .net]
その判定は大学数学の剰余類という概念を使っている。
多分、大学一年生で習うだろう。

493 名前:takasi mailto:sage [2016/01/13(水) 20:04:12.87 .net]
初めて聞いた単語で胃が痛くなりました
とりあえず頑張ります
ちなみに僕は数学は大の苦手です
数学の知識があったほうがどう考えてもいいですね

494 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:04:33.55 .net]
今日はアプリの設定データについて勉強する。
アプリを終了した後でも、データを保存しておきたい場合、
ファイルやレジストリにデータを記録することになる。
レジストリはWindowsが持っている、階層構造を持ったデータベースで
あり、ファイルとは異なる。

495 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:10:02.84 .net]
二つのTextBoxをフォームに配置し、さらにOKボタンとキャンセルボタンを置く。

496 名前:takasi mailto:sage [2016/01/13(水) 20:12:34.79 .net]
置きました

497 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:18:30.96 .net]
OKボタンをダブルクリックして、次のコードを追加。

var key = Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"Software\Takashi\MySoftware");
key.SetValue("Text1", textBox1.Text);
key.SetValue("Text2", textBox2.Text);
key.Close();

498 名前:takasi mailto:sage [2016/01/13(水) 20:20:17.35 .net]
追加しました



499 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:23:26.62 .net]
プログラムを実行してOKを押す。これでレジストリに書き込まれた。
Win+Rキーを押してregeditと入力してEnterキーを押す。
これでレジストリエディターが起動する。
HKEY_CURRENT_USER\Software\Takashi\MySoftwareがあることを
確認せよ。

500 名前:takasi mailto:sage [2016/01/13(水) 20:28:09.63 .net]
Tkashi\Mysofrwareとレジストリを確認しました

501 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:31:55.02 .net]
次は読み込みだ。フォームのLoadイベントに次のコードを追加。

var key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"Software\Takashi\MySoftware");
textBox1.Text = key.GetValue("Text1");
textBox2.Text = key.GetValue("Text2");
key.Close();

502 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:36:28.82 .net]
文字列リテラルに@が付いているのは\によるエスケープシーケンスを解釈しないためだ。
以前、"\n"は改行を表すと言った。"\t"はタブ文字だ。このように通常、""の中の\は特殊な解釈をする。

503 名前:takasi mailto:sage [2016/01/13(水) 20:41:47.46 .net]
オブジェクト型はString型に代入できないと注意されたのでConvert.ToStringしましたが大丈夫でしょうか

private void Form1_Load(object sender, EventArgs e)
{
var key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"Software\Takashi\MySoftware");
textBox1.Text = Convert.ToString(key.GetValue("Text1"));
textBox2.Text = Convert.ToString(key.GetValue("Text2"));
key.Close();

}

504 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:41:56.00 .net]
レジストリはシステムの資源を占有するので、サイズの大きなデータを書き込むべきではない。
大きな設定データはファイルに記録する。
ではどこに設定ファイルを書き込めばいいか?
特殊フォルダのAppDataに書き込むのがいいとされる。

505 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:45:29.99 .net]
>>503
key.GetValue("Text1").ToString();
でOKだ。

506 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:49:48.52 .net]
特殊フォルダの場所を取得するには次のように書く。
var path = System.Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);

507 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 20:57:53.42 .net]
読み込みされるか実行して確認せよ。
次にレジストリエディタでMySoftwareキーを削除してプログラムを再起動せよ。
例外が発生するはずだ。実はキーが開けないときkeyはnullになる。
nullというのは無効なデータのことだ。

508 名前:takasi mailto:sage [2016/01/13(水) 21:01:26.06 .net]
読み込まれないです!
https://i.gyazo.com/f2e5ff48bd5fa2390e783ff8d86d6c9e.png
Form1_Loadは初めから存在してなかったので自分で作ったのですがこれが原因でしょうか



509 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 21:03:06.24 .net]
キーが開けないときや作れないときはkey == nullになる。
このまま書き込んだり、読み込もうとすると例外が発生してしまう。
対処法はnullチェックをすることだ。
if (key != null) {
...
key.Close();
}

510 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 21:04:38.96 .net]
>>508
それはいったん消してプロパティウィンドウ
からイベントを追加せよ。カミナリのアイコンだ。

511 名前:takasi mailto:sage [2016/01/13(水) 21:12:54.68 .net]
>>507例外がスローされるのを確認して
>>509nullチェックで回避しました

512 名前:takasi mailto:sage [2016/01/13(水) 21:19:18.77 .net]
あ、読み込みも問題なくできました

513 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 21:20:52.39 .net]
課題。ジャンケンゲームでの勝ち・負け・引き分けの回数を
レジストリに記録するようにせよ。

514 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 21:22:48.11 .net]
アプリ設定に使ったファイルやレジストリキーを消すのは、
インストーラ側で行うことが多い。

515 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 21:34:51.21 .net]
課題が出来たら、プルリクせよ。残り時間は自習とする。

516 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 22:11:34.19 .net]
質問はありませんか?

517 名前:takasi mailto:sage [2016/01/13(水) 22:19:11.11 .net]
質問はありませんが、値の受け渡しで頭がぐるぐるしてます

とりあえずsave_keyメソッドとload_keyメソッドを作りぐっちゃぐちゃやってます頑張ります

518 名前:takasi mailto:sage [2016/01/13(水) 22:45:21.86 .net]
えーと、やりたいことは分かっているんですが思考が迷子です
時間がかかりそうなので宿題とさせて下さい
えーとプログラミング適正無しでしょうか悲しいです



519 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 23:12:37.34 .net]
ヒント:
アプリ側で保持するのは、回数が増えた分だ。現在の回数ではない。
レジストリへのアクセスは読み書きを一度に行う。
アプリ側の増分だけレジストリの回数を増やした後でアプリ側の増分をゼロにする。
回数を増やすのは勝敗引き分けが決まったときに行う。
回数の増分はフォーム側ではなくプログラム側で保持する。

520 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/13(水) 23:16:19.59 .net]
おやすみ。身体を冷やすなよ。

521 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 20:36:18.94 .net]
ヘイ、ヨー!
始めっぞ

522 名前:takasi mailto:sage [2016/01/14(木) 20:40:53.10 .net]
おはようごじます・・・

523 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 20:44:14.18 .net]
さあーて、どこまでできたかなっ♪

524 名前:takasi mailto:sage [2016/01/14(木) 20:50:08.39 .net]
正直に言いますとまだ出来ていません
あまりの出来の悪さに悲しみに暮れ寝て起きたら今です
○にたい

525 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 20:54:55.82 .net]
ヘイ、まずは、三つのint型のメンバー変数を追加するよぉ。
初期値はゼロだぜぃ。
int kachi_count = 0;
int make_count = 0;
int aiko_count = 0;

526 名前:takasi mailto:sage [2016/01/14(木) 20:56:23.94 .net]
追加しました

527 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 20:58:47.83 .net]
お次は、勝敗判定の箇所を探してみよー。
hantei関数の呼び出しをしている場所があるよね。
ここで判定に応じてカウント変数を1つ加算だよお!

528 名前:takasi mailto:sage [2016/01/14(木) 21:02:23.71 .net]
加算できました



529 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:03:36.91 .net]
その後にレジストリのカウント値を更新だ。
CreateSubKeyはキーがなければキーを作成してそれを開く。
あればそのまま開く。
カウント値はGetValueで取得、SetValueで設定だ。
しかしまだ値を設定していないときにGetValueしたらどうなるか?

530 名前:takasi mailto:sage [2016/01/14(木) 21:05:55.97 .net]
例外がスローされます

531 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:17:48.07 .net]
>>530
ノーノー、nullが返される。
var value = key.GetValue("KachiCount");
int count = kachi_count;
if (value != null)
{
count += Convert.ToInt32(value);
}
...

532 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:20:30.78 .net]
そしてcount.ToString()をSetValueしてからkachi_countをゼロにする。
他のカウント変数も同様だ。

533 名前:takasi mailto:sage [2016/01/14(木) 21:23:48.93 .net]
どのタイミングでキーを作成しなければいけないのか分からないです

534 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:25:18.15 .net]
カウントを表示するのは別のフォームで行う。
新しくフォームを追加だ。
その上にラベルをいくつか追加。
フォームのLoadイベントでレジストリを読み込んでラベルテキストをセット。
OKボタンでフォームを閉じるようにする。

535 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:28:59.98 .net]
>>533
いつカウントを更新するかは、自由に決めることができる。
アプリが終了するときか、フォームが閉じたときか、カウンタが更新したときか。
ここではすぐに更新してほしいので、hantei関数が呼ばれた後に
レジストリを更新する。

536 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:33:18.31 .net]
どうだね? 作れそうかな?

537 名前:takasi mailto:sage [2016/01/14(木) 21:33:36.08 .net]
>>534
private void Form2_Load(object sender, EventArgs e)
{
var key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"Software\Takashi\MySoftware");
label4.Text = key.GetValue("KACHI").ToString();
label5.Text = key.GetValue("MAKE").ToString();
label6.Text = key.GetValue("AIKO").ToString();
}
で大丈夫ですよね

538 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:35:57.02 .net]
>>537
try/catchしないならkeyとvalueのnullチェックが必要だよ。



539 名前:takasi mailto:sage [2016/01/14(木) 21:36:07.69 .net]
レジストリの更新はメソッドを新たに作成してそこでやらせたほうがいいですよね

540 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:37:03.59 .net]
>>539
そうだね。

541 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:45:20.04 .net]
\MySoftware
のところは
\JankenGUI
にしておこう。

542 名前:takasi mailto:sage [2016/01/14(木) 21:46:11.30 .net]
var key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"Software\Takashi\MySoftware");
if (key != null)
{
var value_kachi = key.GetValue("KACHI");
var value_make = key.GetValue("MAKE");
var value_aiko = key.GetValue("AIKO");
if (value_kachi != null) label4.Text = key.GetValue("KACHI").ToString();
if (value_make != null) label5.Text = key.GetValue("MAKE").ToString();
if (value_aiko != null) label6.Text = key.GetValue("AIKO").ToString();

こういうことでしょうか

543 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:48:05.12 .net]
if (value_kachi != null) label4.Text = key.GetValue("KACHI").ToString();
ちょっと無駄があるな。
if (value_kachi != null) label4.Text = value_kachi.ToString();
こっち。

544 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 21:57:22.37 .net]
git add -a
git commit -m "add counters"
git push origin master

545 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 22:05:30.78 .net]
どうだね?
何があっても、とにかく陽気に行こうぜ

546 名前:takasi mailto:sage [2016/01/14(木) 22:13:32.93 .net]
もう少しで動かします

547 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 22:14:28.61 .net]
どうした? ん?

548 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 22:21:25.15 .net]
ブラインドタッチの特訓と基本情報の取得が必要だな。
1ヶ月以内にブラインドタッチをマスターして、
1年以内に基本情報を取得しなさい。



549 名前:takasi mailto:sage [2016/01/14(木) 22:24:31.61 .net]
上手くいきません
とりあえず現時点のコードをコミットした方がいいですか

550 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 22:25:37.85 .net]
レジストリの更新はカウント加算の後だ。

551 名前:takasi mailto:sage [2016/01/14(木) 22:27:44.43 .net]
ブラインドタッチ一応できます・・・
実質的な死刑宣告と捉えたほうが良いですか・・・

552 名前:takasi mailto:sage [2016/01/14(木) 22:29:36.69 .net]
switch (hantei(player_hand, comp_hand))
{
case HanteiKekka.HANTEI_KACHI:
label3.Text = "あなたの勝ちです";
kachi_player.Play();
++kachi_count;
save_key("KACHI");
break;
case HanteiKekka.HANTEI_MAKE:
label3.Text = "あなたの負けです";
make_player.Play();
++make_count;
save_key("MAKE");
break;
case HanteiKekka.HANTEI_AIKO:
label3.Text = "あいこ";
aiko = true;
++aiko_count;
save_key("AIKO");
break;
}

553 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 22:30:23.51 .net]
じゃあ、pushしといて。
明日見るから。

554 名前:takasi mailto:sage [2016/01/14(木) 22:31:57.33 .net]
わかりましたpushしておきます

555 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/14(木) 22:32:05.26 .net]
今日はおやすみ。

556 名前:takasi mailto:sage [2016/01/14(木) 22:33:02.13 .net]
すみませんでした
おやすみなさい

557 名前:takasi mailto:sage [2016/01/14(木) 23:36:49.80 .net]
$ git push origin master
remote: Permission to katahiromz/JankenGUI.git denied to takasi-desu.
fatal: unable to access 'https://github.com/katahiromz/JankenGUI/': The requested URL returned error: 403

ぐぬぬ

558 名前:仕様書無しさん mailto:sage [2016/01/15(金) 00:55:53.21 .net]
transitive.info/article/git/command/remote/



559 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/01/15(金) 01:19:31.01 .net]
あ、フォーク忘れてた? ごめんね。

560 名前:takasi mailto:sage [2016/01/15(金) 02:12:03.82 .net]
んぐぐぐぐぐぐぐ
プスプスプスシューーーーーーーーーーー






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<200KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef