[過去ログ] 【アリス】system4.0【御用達】 (563レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
216
(2): 名前は開発中のものです。 [sage] 2007/06/19(火) 07:07:26 ID:rXfLnLfd(1/2) AAS
参照変数で気になったのですが、使い方は
戻り値 = 一つ
参照変数 = 複数の戻り値
ということでいいのでしょうか?
217: 名前は開発中のものです。 [sage] 2007/06/19(火) 19:35:41 ID:739CWyTX(1) AAS
戻り値というと「数が返す値」しか思いつかないので
その文章は意味がよくわからんのだが・・・

一つの変数に結びついている参照変数は、元の値と同じ値を返す。
そして、一つの参照変数に複数の変数が結びついている状態はありえない。
なので>>216はちょっと勘違いしてる気がする。
違ってたらすまん
218
(1): 名前は開発中のものです。 [sage] 2007/06/19(火) 20:11:04 ID:v3ALLbbm(1) AAS
int func(void)だとint一つしか返せないけど、
void func(ref int a, ref int b)だとint二つ返せるよね、ってことじゃね?

使い方の一つとしては間違ってないと思うけど、
>216の書き方だとどういう理解をしてるのか俺には分からん。
219: 名前は開発中のものです。 [sage] 2007/06/19(火) 22:06:32 ID:rXfLnLfd(2/2) AAS
>>218
はい。そういうことです。

一つの関数が自身の内部で、別な計算用の関数を呼び出し、
自身のローカル変数の値を、その計算用の関数で計算されるローカル変数の値に変更する時、
returnで計算された結果を返し、その戻り値を=するか あるいは
参照変数型での引き数を使うと思いますが、
その際
単独のローカル変数を変更するのであれば 戻り値を=
複数のローカル変数を同時に変更するのであれば 参照変数型での引き数
を使用するということでいいのでしょうか?

という風に聞きたかったのです。分かりにくくてすみませんでした。
220: 名前は開発中のものです。 [sage] 2007/06/21(木) 19:37:12 ID:eiLXPffC(1) AAS
まあ構造体組んでそいつを返せば無理やりできんことはないが、
普通は構造体なんかに値突っ込むときも参照だわな。
221: 名前は開発中のものです。 [sage] 2007/06/29(金) 18:49:40 ID:MGei+fJA(1) AAS
ほっしゅ
222: 名前は開発中のものです。 [sage] 2007/06/29(金) 19:28:18 ID:yKQrVVdW(1) AAS
ちょっと困りました。
コンパイルエラーが出たとき、アウトプットに出力される、
ファイルにリンクされた文字をクリックしても、そのファイルを開けません。

(例:gamemain.jaf(7):構造体【a】は宣言されていません)
~~~~~~~~~~~~~~~~~ここ

クリックすると、

"C:\サンプル\source\gamemain.jaf(7)"が見当たりません
 新規作成しますか?

というダイアログが表示されます。何故でしょうか。
ちなみにエディターはテラパッドです。
223: 名前は開発中のものです。 [sage] 2007/06/30(土) 20:17:04 ID:RMC7WURe(1) AAS
環境設定でパラメータがないやつは
ファイル名の最後に行数までくっつけてエディタに送っちゃうから。
>"C:\サンプル\source\gamemain.jaf(7)"が見当たりません
の(7)がそれ。
224: 名前は開発中のものです。 [sage] 2007/07/01(日) 21:17:19 ID:FtSxvsXR(1) AAS
ありがとうございます!
秀丸エディターに設定したらちゃんと開けました。
225: 名前は開発中のものです。 [] 2007/07/07(土) 12:55:13 ID:LDQTU85a(1) AAS
処理に関して質問です

キャラクターの移動をママトトやままにょにょみたいに表したく

 SP_GET_POS( 0, x, y);
 for( i=0; i<4; i++){
  x = x + 8;
  SP_SET_POS( 0 ,x ,y);
  SACT_UPDATE();
  W(100);
 }

上記のように8ドットづつ動かしたいのですが、
実際に実行してみると
0.1秒に8ドットづつ32ドット右に移動する場合と
0.4秒待ってから一気に32ドット移動する場合があります

なぜ分かれてしまうのでしょうか? }
226
(1): 名前は開発中のものです。 [sage] 2007/07/08(日) 02:34:41 ID:OMaK/Dvz(1) AAS
void game_main(void)
{
SP_CREATE(1, 200, 200, 255, 0, 0, 255);
int i;
int x = 0;
int y = 0;

SP_GET_POS( 1, x, y);
 for(i=0; i<4; i++){
  x = x + 8;
  SP_SET_POS( 1 ,x ,y);
  SACT_UPDATE(100);
}

'移動'A;
game_main;
}

とりあえずやってみたけど、一気に進むのが再現できないので
何故分かれるのか分からん。一気に32ドット進むのは、UPDATEができていないからだと
思うけど、別にUPDATEするのに何か条件を入れているわけじゃないしね。仮にforの
中身がスルーされているならそもそも進むことすらないわけだし。

どういう状況で分かれるのか教えてもらえると助かる。
あと、変数の宣言はGOかLOか? どんな数値が入っているか? 
他のスプライトに重なってたりして見えなくなっているということはないか?
といったことなんかも。移動用関数としてあるなら、そのままのせて欲しい。
227
(1): 名前は開発中のものです。 [sage] 2007/07/08(日) 12:58:00 ID:1gTI6MKH(1/2) AAS
>>226
ありがとうございます。

分かれる状況は実行する度にランダム(?)で処理が分かれていました。、
もしかしたら、チュートリアルにあるぱたぱたアニメーションと同時に行っている為、
その際、移動する画像が消えた瞬間に移動を実行してしまった為かと思い始めました。

ソースが長くなってしまったので以下にあげました
外部リンク[html]:www11.axfc.net
外部リンク[html]:www11.axfc.net
pass : source
228: 名前は開発中のものです。 [] 2007/07/08(日) 13:44:11 ID:jNRdLWCe(1) AAS
>227
待機モーションでnSp1の方が表示されているときに移動しようとすると、
nSp0が未表示になってるから移動が見えないんだと思われ。

移動の時にnSp0を表示するようにするか、現在表示されている方を移動させるようにすれば
直ると思われます。
229: 名前は開発中のものです。 [sage] 2007/07/08(日) 14:47:34 ID:1gTI6MKH(2/2) AAS
移動時の表示の切り替えを正したら直りました。

回答下さった方ありがとうございました。
230: 名前は開発中のものです。 [sage] 2007/07/17(火) 23:18:26 ID:u+tbtlEn(1) AAS
hosyu
231: 名前は開発中のものです。 [sage] 2007/07/24(火) 22:16:50 ID:eLT263mP(1) AAS
保守
232: 名前は開発中のものです。 [sage] 2007/07/25(水) 02:49:00 ID:9LCgxJ9S(1) AAS
system 4.0ってさオブジェクトの再利用ってどうすんの?
クラスの継承もprototypeによる委譲もMix-inもないけどさ。
演算子オーバライドも無いからメンバアクセスをprototypeにリダイレクトもできないし。

それにこれのどこがOOPなの?言語仕様が劣化C++でライブラリ設計がベターCじゃん。
使ってる人はどうやってOO実現してるの?
名前空間もパッケージも無いけどモジュール性の確保とかどうするの?
233: 名前は開発中のものです。 [sage] 2007/07/25(水) 20:38:35 ID:AsNfm7Ol(1) AAS
下手をすれば、未だに構造化すらされていないスクリプトのエンジンが動いてるような
エロゲ業界においては、最も進んだプログラムパラダイムに位置しているシステムのうちの一つ、
という意味で、オブジェクト指向に近いという程度の話。

一方で、学問的な美しさとは程遠い泥臭さも強い。
言語仕様が劣化C++でライブラリ設計がベターCってのは、全く持ってその通り。
天才級のプログラマ達が、長年かけて積み上げてきたシステム設計ハックを
Sys4が言語的にサポートした所で、それを(PGとしては)にわか仕立てである
ライターやグラフィッカーが使いこなせなければ意味がない。

要するに、アレがサポートされてない、コレがサポートされてないと
何でもブーたれる本職のプログラマは、素直にアレとコレがサポートされている言語を選んで
足りないゲームライブラリを自前で書けば良い。と俺は思う
234: 名前は開発中のものです。 [sage] 2007/07/26(木) 18:30:37 ID:wUr/yAzc(1) AAS
そう考えると吉里吉里のTJSはエロゲにはとんでもないオーバーテクノロジーなんだな、
今風の動的なパラダイム満載言語は。

作者のハードウェアとソフトウェアを頭の中で分離出来てなくて
アセンブリで関数エミュレートして動的リンクとか言ってたのは、流石に何言ってんだコイツ?
とか思ったけど、エロゲ界のマだと普通なんだろうか。
235: 名前は開発中のものです。 [sage] 2007/07/26(木) 20:19:55 ID:RIwjy3oY(1) AAS
難しい言語話している人達は日本人ですか?
トーシロの私はさっぱりわからんべさ。

楽できないアレがほしいという部分はあるけど、ウィザードリィを作ろうと思えば
作れるスクリプト、そのくらいの機能があるだけでとりあえずは十分だと思えてしまう。
そして、そういう点でいえば吉里吉里よりも(個人的に)使いやすい。

私的にはセーブ日時やクリアデータの保存ぐらいにしか構造体は必要ない、
ぶっちゃけじゃま〜と考えている人間だけど、これって少数派ですかね。
236: 名前は開発中のものです。 [sage] 2007/07/27(金) 11:34:34 ID:HnpebtNA(1) AAS
ウィザードリィ作ろうと思うと構造体欲しくないか?
237
(1): 名前は開発中のものです。 [sage] 2007/07/27(金) 18:31:28 ID:Sob+9ToY(1) AAS
配列で十分かな。
238: 名前は開発中のものです。 [sage] 2007/07/28(土) 01:00:12 ID:1WPiB24Y(1) AAS
アリスソフトは分業が確立されてるから
ゲームくむひととシステムつくるひととライブラリつくるひとが
分かれてる(システムとライブラリは同じ人かも試練)

みんながそれぞれ仕事をやりやすくするための落としどころが
劣化C++でライブラリ設計がベターCってところなのかもね。
あくまでも市販ソフトを作るための社内ツールなので、社員にとって
使いやすいか、嫌らしいバグを生み出しにくいような設計になってるか、
機能性よりも安定性か、、あたりが重視されてるんだとおも。

そういえば社内ではゲームくむひとの都合でSystem3.xライクな
命令名のライブラリを使ってるんじゃないっけ?
239: 名前は開発中のものです。 [sage] 2007/07/28(土) 03:12:45 ID:oK2zS/M5(1) AAS
BASIC時代じゃないんだからそりゃ分業はするだろ。
とくにエロゲなら徹底的に分業すると思う。
分業した結果ならなおさら劣化C++構文は負担になりそうだけど。
240
(1): 名前は開発中のものです。 [sage] 2007/07/28(土) 12:59:46 ID:xxhma4iV(1) AAS
専任のプログラマがSys4の上に更にゲームシステムを構築した上で
他のスタッフに投げる事を想定してるみたいだから
末端のシナリオ関数はBASIC的な形式にしてしまっても何ら問題ない。
プログラマはプログラマで、DLLを作ってSys4に組み込むことができる。

商業ベースで定期的にソフトを出すのでエンジンが必要で、
ADVだけでなくRPGやSLGにも持って行きたいが、エンジンを複数抱える余裕はない。
ゲームの規模が小さくないので、まるで構造化されてないコードは管理が難しく、オブジェクト指向を取り入れるメリットもある。
しかし所詮エロゲメーカーなので社員数も少なく、エンジンに触れる人をプログラマだけに限定できるわけでもないので
本物のオブジェクト指向設計を強いることは現実的ではない。
同じコードを使い回すことでエンジンを安定させたいが、タイトルによっては
固有のC++&DirectXのコードを拡張できる余地は残したい。
という完全にアリスソフトの内向きの都合でできてるものなので、変態仕様なのは百も承知してる。

プログラマの立場から見るなら、
C++の機能が使えない事が不服ならC++を使いましょう。
非プログラマの立場から見るなら、
C++の構文が不服なら普通のADVエンジンでも探しましょう。あるいはプログラマを探しましょう。
って所
1-
あと 323 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.013s