今年はプログラム勉強してゲームつくるよ!

1 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:32:40.362 ID:aTTYB2Uk0St.V
現在26日目だよ!!
開発環境
MacBook 12インチ
unity
VSCode

コードはここ
https://github.com/himajin-vip/test2
現在の進捗状況
https://unityroom.com/games/rensyuu
動画とか
https://Twitter.com/xPf19p
https://twitter.com/5chan_nel (5ch newer account)

2 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:33:30.361 ID:aTTYB2Uk0St.V
intやstringをラップしたらDictionaryがめちゃくちゃ使いにくくなったから全部つくりなおすよ!!
3 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:34:42.306 ID:FosWWFN40St.V
毎日続けててえらいですね
継続してると結果がでます
5 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:35:22.935 ID:aTTYB2Uk0St.V
>>3
ありがとう!
4 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:34:45.138 ID:aTTYB2Uk0St.V
DictionaryのKeyにintの値を持つだけのクラスAを入れたとしてvalueの追加ってどうやったらいいの??
40 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:11:56.730 ID:liAW4KrCM
>>4
いまさらだけどこれってどんなコードでvalue追加しようとしてダメだったの?
42 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:22:04.807 ID:6mQufTaZ0
>>40
えっとたとえばintのフィールドをもったクラスAをキーにしてたとして
Dictionary[ここなにいれるの?]+=addvalue
わかるかな??
49 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:47:26.205 ID:wyQlVcZvM
>>42
なるほどどうも
これなら同一オブジェクトの参照をわたす必要があるからキーに使ったオブジェクト自体も管理しないといけないから面倒ですね

intの値が同じなら取り出すってやりたいならequalsメソッドをオーバーライドとかかな

50 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:51:34.258 ID:6mQufTaZ0
>>49
大変ですよね、、、だからDictionaryつかうのをやめてListにしました!!
51 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:52:32.137 ID:6mQufTaZ0
>>49
もともと有る物をオーバーライドするって考えはなかったですね、、、、、
6 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:40:54.103 ID:q+9aZIgI0St.V
お前がスレ立ててくれるおかげでさぁやるかって気になってるみたいなとこある
がんばろ
8 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:41:09.656 ID:aTTYB2Uk0St.V
>>6
がんばろうね!!
7 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:41:00.868 ID:aTTYB2Uk0St.V
やっぱむりっぽいなDictionaryはつかうのやめよ、、、、
9 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:42:07.494 ID:aTTYB2Uk0St.V
車輪の再開発なんだろうなぁ
10 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:43:57.889 ID:q+9aZIgI0St.V
dictionaryのキーに参照系の型を設定する発想なかったなぁ
ちゃんと取り出せなくなるのか
11 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:48:48.320 ID:9KjTsPWbdSt.V
車輪の再開発せずに成長した奴はいねぇ
ドンドンやれ
13 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 21:59:22.719 ID:aTTYB2Uk0St.V
って事でDictionaryをつかうのをやめていままでのキーとバリューをもったクラスを作ってリストで管理する事にしたよ!
14 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 22:01:28.032 ID:q+9aZIgI0
なんで今までキーがオブジェクトのdictionary作らなかったんだろと考えてみたら
フィールドにオブジェクトのキーと値を持った自作クラスのリストを使ってたからだった
取り出しやすさが違うか
15 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 22:01:48.597 ID:q+9aZIgI0
同じこと書いてあったw
16 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 22:04:29.611 ID:aTTYB2Uk0
>>15
たどりつくところは同じなのかもですねwwww
17 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 22:12:23.962 ID:Gr6xMcHUd
今日も頑張ってるなぁ
18 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 22:17:58.393 ID:aTTYB2Uk0
>>17
頑張ってるよ!
19 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 22:43:43.612 ID:aTTYB2Uk0
たのちい
20 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 22:48:05.254 ID:+BU2rJOI0
listとかdictionaryにstatic付けられるのってどゆことなんだ
予めメモリ確保しまくってるの?ヤバくね?
21 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 22:57:04.129 ID:aTTYB2Uk0
>>20
どゆこと?
22 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 23:11:27.273 ID:+BU2rJOI0
>>21
静的なのに要素の出し入れできるの不思議だなあって
何か認識が間違ってるかもしれんが
23 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 23:26:03.899 ID:aTTYB2Uk0
>>22
ふむ、、、自分がstaticの認識をまちがってるかもしれない、、、、
24 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 23:26:59.552 ID:aTTYB2Uk0
>>22
ちなみにどこのことですか??
25 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 23:31:26.198 ID:+BU2rJOI0
あ、いやすま●こないだ自分で書いてて抱えた疑問書いてみただけなんだ
26 名前:匿名のゴリラ 投稿日時:2020/02/14(金) 23:34:47.729 ID:+BU2rJOI0
そらこのスレに書いたら>>1のソースについて言ってると思うわな
ミスった
28 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:12:53.390 ID:6mQufTaZ0
>>26
あっそういうことですね!
自分もリストとかstaticでもたせてるので考えさせられました!
27 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:01:08.246 ID:DYnmRO/K0
Cの教プロとか
最悪計算量のメモリ確保するけど
C#のディクショナリってHashMapみたいなもので認識あってるなら
最低限のメモリしか確保されなくない?
29 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:13:35.589 ID:6mQufTaZ0
>>27
メモリの事はわかんないけど勝手に増やしたり減らしたりしてくれてると思いたい、、、、
30 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:14:32.255 ID:DYnmRO/K0
メモリリークか!
31 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:31:37.931 ID:6mQufTaZ0
>>30
メモリまったくわかんないや
32 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:33:07.874 ID:R2NUkrrE0
ハッシュマップは要素を自動生成してくれる便利ちゃんだぞ
33 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:33:54.765 ID:6mQufTaZ0
オブジェクト指向エクササイズやってみてるけどすごくたのしい
34 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:39:05.315 ID:6mQufTaZ0
インベントリクラスがどんどんかわっていくわ、、、
35 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:42:17.870 ID:6mQufTaZ0
ああああああRemoveどうしたらいいんやああああああああ
36 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:44:06.889 ID:6mQufTaZ0
RemoveRangeを手に入れた!!!!
37 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:52:50.729 ID:dZ6s55gg0
俺は一週間なにもしないで過ごした間に6日くらいすすんでる
応援してる
38 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 00:57:23.817 ID:6mQufTaZ0
>>37
休息も大切だよ!!
ありがとう!
39 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:04:32.768 ID:6mQufTaZ0
しつもんです!
アイテムを保管するインベントリを持ったインベントリコントローラークラスがあってアイテムを入れたりだしたりっていろんなところでするから
インベントリをstaticにしてインベントリコントローラークラスを継承した操作用のクラスを作ってるんだけどおかしいことしてる?
41 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:12:12.380 ID:R2NUkrrE0
インベントリーコントローラーがインベントリーをコントロールしてないのは違和感あるな
43 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:22:36.452 ID:6mQufTaZ0
>>41
継承してるから継承先もインベントリコントローラーだよってかんがえてるんだけどおかしいかな??
44 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:23:47.019 ID:6mQufTaZ0
用はインベントリコントローラーを継承した追加する人、削除する人みたいにクラスをわけようとおもってるんだよね、それならインベントリコントローラークラスにメソッドとして全部持たせてもいいんだけどどっちがいいかな?
45 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:40:15.920 ID:nWtOzOCqM
やっぱ変なことしてんのかなぁ、、、
46 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:40:34.270 ID:nWtOzOCqM
あれIDかわった
47 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:41:43.411 ID:y1dH28U+0
すごいな
全然わからんけど頑張ってくれ!
48 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:44:11.716 ID:6mQufTaZ0
>>47
ありがとう!
52 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 01:53:06.365 ID:6mQufTaZ0
きっとものすごい車輪の再開発やってるけど勉強だし気にしない!
53 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:05:02.872 ID:6mQufTaZ0
とりあえずインベントリクラスは完成かなぁ
54 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:06:00.414 ID:6mQufTaZ0
intをラップしただけでこんなに大変とは思わなかったよ、、、暇な人がいたらコードレビューおなしゃす、、、
57 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:23:21.000 ID:6mQufTaZ0
ただprayfabに格納するためにTojsonがDictionaryに対応してないからどちらにしろListにしないとなぁとは思ってたしよしとしよう、、、、
58 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:29:59.797 ID:6mQufTaZ0
ただラップされたクラスを持ってるリストをちゃんとtojsonしてくれるのかなぁ、、、、ちょっと試してみよう
60 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:33:13.309 ID:6mQufTaZ0
やっぱだめかああああああああああ
61 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:36:15.204 ID:6mQufTaZ0
ってことは端からひとつづつJson化していくしかないか、、、、
62 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:39:49.598 ID:6mQufTaZ0
あれ、、、、なんか違うな
63 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:44:57.598 ID:6mQufTaZ0
ふむパブリックかつint とかStringみたいなそのままの値じゃないとだめなのか
64 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:45:22.760 ID:6mQufTaZ0
パブリックかぁ、、、、、
65 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:45:57.099 ID:6mQufTaZ0
やっぱそうなるとSavedataクラス作ってそこに値を全部ぶち込むしかないよなぁ
66 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:50:37.742 ID:bItSl10j0
unityのjson化融通効かないよなぁdictionary使いたすぎる
いろいろライブラリ試したけどこれってのがなかったから結局セーブ用のアセットポチってしまった
67 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 02:53:14.549 ID:6mQufTaZ0
>>66
もうちょっと気軽にぶち込ませて欲しいよね、、、、
68 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 03:01:40.576 ID:6mQufTaZ0
引数のListの型ってスーパークラス指定しててもサブクラスのListは受け付けてくれないんだ、、、、、、
69 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 03:06:00.342 ID:6mQufTaZ0
んースーパークラスに変えるクラスを用意するべきかそもそものリストをスーパークラスで作るか、、、
スーパークラスで作ってもいいんだけどコード読むときにそのリストがなに入れてるか分かりにくい気がするけどそんなことないのかな?
70 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 03:18:40.902 ID:6mQufTaZ0
ああああラップするとクラスで受け渡しするから参照なのかコピーなのか気をつけないといけないな!
71 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 03:19:18.491 ID:6mQufTaZ0
まじでオブジェクト指向エクササイズ大変だけどプログラムで気をつけるところとか分かってくるし勉強にはいいと思う!!
72 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 03:25:58.727 ID:6mQufTaZ0
受けを広くしろってよくみるけど引数はスーパークラスにして内部で本当にほしいクラスか判断して動作するようにしたらいいのかなぁ?
73 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 03:42:03.559 ID:XJrU1eHm0
チミもがんばってるのかね
74 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 03:49:05.281 ID:6mQufTaZ0
>>73
頑張ってるよ!!
75 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 03:52:14.114 ID:6mQufTaZ0
Unityでスクリプトつくると勝手につくられるusingって使ってないなら消した方がいいのかな?
76 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 03:57:55.400 ID:WPjSP1iO0
久々に見たわ
やめたかと思った
77 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:05:05.086 ID:6mQufTaZ0
>>76
えっほぼ毎日やってるよ!!
78 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:05:49.943 ID:WPjSP1iO0
>>77
ここ一週間見かけなかったけど…
スレ見逃してただけかな
79 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:13:09.017 ID:6mQufTaZ0
>>78
時間が合わなかったのかもね!!
気にしてくれててうれしい!!
80 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:14:16.602 ID:XJrU1eHm0
そういやワシUNITYしらんしC#も3.5以来触ってないやw
81 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:19:28.676 ID:6mQufTaZ0
>>80
楽しいですよ!!
プログラムやってる人なんですね!
82 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:33:19.410 ID:XJrU1eHm0
空気よまずにいうとデータフローに使う構造体やクラスはとりあえずラップしときゃええんちゃうの?
そんで実体はDictionaryで合成してもたせれば?
別途インターフェースで窓口定義して、それを実装させて
コントローラにはその型で入出力するようにしてさ
必要な窓口は挿入削除参照インポートエクスポートくらいやろうし
そのラッパーをアダプタにしていろいろな不都合吸収させればよろし
83 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:36:13.575 ID:6mQufTaZ0
>>82
ひええええなんかわかりそうでわからない初心者脳でごめんなさい、、、
84 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:38:42.145 ID:6mQufTaZ0
ちょっと話それるかもしれないけど最近オブジェクト指向勉強しててインターフェースで窓口的なのよくみるけどこのインターフェースってInterfaceのことなの?
それともクラスとクラスをつなぐ時に直接触らせると依存がうまれるから入出力用にクッションクラス的なのを作れってこと?
89 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:49:51.964 ID:XJrU1eHm0
>>84
構文はしっかり忘れたけどメンバの定義のみ列挙したやつやったらたぶんせやで
クラスにインターフェースをインプリメントしとけば、
利用側はインターフェースの型で入出力できるで
つまりインターフェースをインプリメントさえしとけば
当該クラスの実装内容はなんでもええから簡単に差し替えられる
型による結合を弱めることがでけるわけやねー
 
しかしデータの形式による不都合のアジャストはクラス内で実際に実装するけどねー
たいがいはラッパークラスにするよん
継承は全体像が固まってからにしないと逆にクラス間結合あげてしまうから慎重にー
92 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:52:52.261 ID:6mQufTaZ0
>>89
なんとなくわかるけどわかんない、、、ちなみにもし時間あるならいまinventoryクラスをリファクタリングしたところだからみてくれるとすごくうれしい
85 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:39:17.841 ID:6mQufTaZ0
ちなみに今は下の考えでコードかいてる
86 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:41:49.130 ID:6mQufTaZ0
そろそろ1ヶ月になりそうなのにまだ全然だな、、、、、、
87 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:48:58.650 ID:6mQufTaZ0
んーなんかぐるぐるしてんなぁ
88 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:49:44.229 ID:6mQufTaZ0
フィールドだけのクラスって作ってもいいの?
91 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:51:51.063 ID:XJrU1eHm0
>>88
それやとただの構造体やけど普通にバリデータ入れなきゃってなって
あとでクラスになるけどなw
90 名前:匿名のゴリラ 投稿日時:2020/02/15(土) 04:50:09.751 ID:6mQufTaZ0
あっやっぱちがうわ

コメント一覧

タイトルとURLをコピーしました