ソースを上げるスレッド
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
01/11/06 18:18ID:TUTRHoJP何となくソースを上げたくなったときに公開するためのスレッド。
# 一種の隔離スレです。
0078名前は開発中のものです。1/3
02/01/30 00:17ID:???If E_nokori > 0 Then
GoTo Tono_living
Else
GoTo Tono_died
End If
Tono_living:
'乱数の初期化
Randomize
'1から10までの数を取り出す
ghost = Int(Rnd * 10) + 1
'10を引いたとき(確率は10%)
If ghost > 9 Then
MsgBox " ● " & vbCrLf & "∧((∧" & vbCrLf & _
"( ・∀・)モラ殿は用心棒を呼びつけた!!" & vbCrLf & "" & vbCrLf & _
"「一刀斎!そちの出番じゃ!」"
'ニギリ一刀斎の出現
MsgBox "\" & vbCrLf & " \" & vbCrLf & " X" & vbCrLf & " ヾヽ" _
& vbCrLf & " ヾ ヽ /■ヽ" & vbCrLf & " \ (´∀` .)、" _
& vbCrLf & " \ y ゞ ヽ" & vbCrLf & " =∞=ゝゝ" _
& vbCrLf & " 丿ヽ \" & vbCrLf & " ヽ____ソ______ゝ" _
& vbCrLf & " (Y_) (Y_)" & "ニギリ一刀斎の攻撃!!" & vbCrLf & "" & vbCrLf & _
"「そこのお前、もう少し気配を消す修練を積んだほうがいい。」"
'自分が受けたダメージ
dameji = 9999
'自分の状態
nokori = nokori - dameji
slime = MsgBox("あなた" & vbCrLf & "" & vbCrLf & "は" & _
dameji & "のダメージを受けた!" & vbCrLf & "" & vbCrLf & _
"あなたの 残HP " & nokori, , "戦闘中")
0079名前は開発中のものです。3/3
02/01/30 00:18ID:yEwA5EvG'1-9を取り出すと、モラ殿の攻撃
MsgBox " ● " & vbCrLf & "∧((∧" & vbCrLf & _
"( ・∀・)モラ殿の連続攻撃だ!!" & vbCrLf & "" & vbCrLf & _
"「うん、せいぜい頑張ってね。」"
'連続攻撃のループ処理
For Renzoku = 1 To 2
'乱数の初期化
Randomize
'自分が受けたダメージ
dameji = Int(Rnd * 3) + 3
'自分の状態
nokori = nokori - dameji
slime = MsgBox("あなた" & vbCrLf & "" & vbCrLf & "は" & _
dameji & "のダメージを受けた!" & vbCrLf & "" & vbCrLf & _
"あなたの 残HP " & nokori, , "戦闘中")
Next Renzoku
End If
'自分の生死の判定
If nokori > 0 Then
GoTo You_livingAct4
Else
GoTo You_died
End If
Tono_died:
'エンディング
MsgBox "HAPPY END"
End
'自分が倒されたときの処理
You_died:
slime = MsgBox("あなたのスレは終了しました。(゚д゚)マズー", vbCritical, "GAMEOVER")
End
End Sub
0080名前は開発中のものです。
02/01/30 00:23ID:yEwA5EvG'追加
'モラ殿の攻撃を決める乱数値格納変数
Dim ghost As Integer
0081社長
02/01/30 00:24ID:???0082名前は開発中のものです。
02/01/30 01:29ID:???0083名前は開発中のものです。
02/01/30 06:57ID:???0084名前は開発中のものです。
02/01/30 09:40ID:???0085名前は開発中のものです。1/2
02/01/31 01:00ID:???'戦闘にすばやさの要素を加える
'Ver5
'テストバトルモード
Private Sub Form_Load()
'自分のすばやさの数値を格納する変数
Dim Oosasori As Integer
'敵のすばやさの数値を格納する変数
Dim Gaikotsu As Integer
'攻撃を仕掛けるのはどちらか、判定値を格納する変数
Dim Madoushi As Integer
'すばやさの判定処理
'自分が敵よりすばやさが上の場合と
'敵が自分よりすばやさが上の場合
'自分はすばやさを 10 とする
'敵のすばやさは 5 とする
Oosasori = 65
Gaikotsu = 90
'すばやさを比較する
If Oosasori > Gaikotsu Then
'自分のすばやさが上だったときの処理へ
GoTo W_Subayasa
Else
'自分と敵のすばやさが同じだったときの処理
If Oosasori = Gaikotsu Then
'乱数の初期化
Randomize
Madoushi = Int(Rnd * 100) + 1
'50%の確率で自分が攻撃できる
If Madoushi > 50 Then
MsgBox "あなたの攻撃!"
'敵の攻撃処理へ
Else
MsgBox "敵の攻撃!"
'自分の攻撃処理へ
End If
End If
'ここのEndはテスト用
End
'敵のすばやさが上だったときの処理へ
GoTo L_Subayasa
End If
0086名前は開発中のものです。2/2
02/01/31 01:02ID:bylwudl/'乱数値が6-100を取り出したとき、あなたの攻撃が優先される
'確率は95%
'乱数の初期化
Randomize
Madoushi = Int(Rnd * 100) + 1
If Madoushi > 5 Then
MsgBox "あなたの攻撃!"
Else
'すばやさが上でも、残り5%の確率で敵が攻撃してくる
MsgBox "敵の攻撃!"
End If
'敵の攻撃の処理をなんか書く
End
L_Subayasa:
'乱数値が6-100を取り出したとき、敵の攻撃が優先される
'確率は95%
'乱数の初期化
Randomize
Madoushi = Int(Rnd * 100) + 1
If Madoushi > 5 Then
MsgBox "敵の攻撃!"
Else
'すばやさが上でも、残り5%の確率であなたが攻撃できる
MsgBox "あなたの攻撃!"
End If
'自分の攻撃の処理をなんか書く
End
End Sub
0087名前は開発中のものです。
02/01/31 01:06ID:???'敵の素早さが自分より上の時は、
Oosasori = 5
Gaikotsu = 10
'自分の素早さが上の時は
Oosasori = 10
Gaikotsu = 5
'この数値は2ケタに設定したいとき
Oosasori = 65
Gaikotsu = 90
0088名前は開発中のものです。1/3
02/02/01 00:28ID:???'Microsoft Visual Basic 6.0(SP5)
'Ver7
'武器、防具を手に入れることにより、戦闘の
'勝敗の確率をある程度ユーザーが操作できるようにする。
'この要素をとりいれることで、戦闘の有利、不利を
'意図的に楽しめることが可能となる。
'Ver6/テストバトルモード
'今回は、敵の防御力が自分の攻撃力を上回ることはないものとする。
'MsgBox格納変数
Dim Meda As Integer
'武器を手に入れたときの攻撃値を格納する変数
Dim Rikanto As Integer
'防具を手に入れたときの防御値を格納する変数
Dim Shiryou As Integer
'武器の初期値
Rikanto = 0
'防具の初期値
Shiryou = 0
'ダメージ値格納変数
Dim dameji As Integer
'残りHP格納変数
Dim nokori As Integer
'敵に与えたダメージ値格納変数
Dim E_dameji As Integer
'敵の残りHP格納変数
Dim E_nokori As Integer
'敵に与えたダメージに武器の攻撃値を加えた値を格納する変数
Dim M_dameji As Integer
'敵から受けたダメージから、防御力を引いた値を格納する変数
Dim G_dameji As Integer
'HPの初期値設定
nokori = 20
'敵のHPの初期値設定
E_nokori = 20
MsgBox "Let's スタート!"
MsgBox "あなたは、モナーの街にたどり着きました。"
Meda = MsgBox("武器を買うときは「はい」を、防具を買うときは「いいえ」を押してください。", vbYesNo, "モナーの街")
If Meda = vbYes Then
MsgBox "モナーの剣を買った!攻撃力が 3 上がった!"
Rikanto = Rikanto + 3
Else
MsgBox "モナーの鎧を買った!防御力が 3 上がった!"
Shiryou = Shiryou + 3
End If
Meda = MsgBox("ハァハァ(´Д`;)" & vbCrLf & "" & vbCrLf & _
"が、あらわれた!!" & vbCrLf & "あなたのHP・・・" & _
nokori & vbCrLf & "" & vbCrLf & "敵のHP・・・" & E_nokori, _
vbExclamation)
'自分が生きているときの処理
0089名前は開発中のものです。2/3
02/02/01 00:30ID:???MsgBox "あなたの攻撃!!「クソスレばっかり上がってるだろ?」"
'乱数の初期化
Randomize
'敵に与えた素のダメージ
E_dameji = Int(Rnd * 6) + 1
'さらに武器を加えた総合ダメージ
M_dameji = E_dameji + Rikanto
'敵の状態
E_nokori = E_nokori - M_dameji
slime = MsgBox("ハァハァ(´Д`;)" & vbCrLf & "" & vbCrLf & _
"に" & M_dameji & "のダメージを与えた!" & vbCrLf & "" & _
vbCrLf & "ハァハァ(´Д`;)の 残HP " & E_nokori, , "戦闘中")
'敵の生死の判定
If E_nokori > 0 Then
GoTo E_living
Else
GoTo E_died
End If
'敵が生きていたときの処理
E_living:
MsgBox "ハァハァ(´Д`;)の攻撃!!" & vbCrLf & "" & vbCrLf & _
"「あかりたん・・・ハァハァ」"
'乱数の初期化
Randomize
'自分が受けたダメージ
dameji = Int(Rnd * 4) + 1
'自分が受けたダメージから、防御力の値を引く
G_dameji = dameji - Shiryou
'総合ダメージが 0 より下のとき(マイナスのとき)
If G_dameji <= 0 Then
'受けるダメージは 0 になる(ダメージを受けない)
G_dameji = 0
Else
'防御力の値を引いた残りの値(実際に受けるダメージ)
G_dameji = G_dameji
End If
0090名前は開発中のものです。3/3
02/02/01 00:31ID:???nokori = nokori - G_dameji
slime = MsgBox("あなた" & vbCrLf & "" & vbCrLf & "は" & _
G_dameji & "のダメージを受けた!" & vbCrLf & "" & vbCrLf & _
"あなたの 残HP " & nokori, , "戦闘中")
'自分の生死の判定
If nokori > 0 Then
GoTo You_living
Else
GoTo You_died
End
End If
'敵を倒したときの処理
E_died:
MsgBox "ハァハァ(´Д`;)を倒した!この世に平和が訪れた。" & _
vbCrLf & "" & vbCrLf & "HAPPY END"
End
'自分が倒されたときの処理
You_died:
MsgBox "あなたのスレは終了しました。(゚д゚)マズー"
End
End Sub
0091名前は開発中のものです。1/3
02/02/01 00:32ID:???'Microsoft VisualBasic6.0(SP5)
'Ver8
'移動処理テスト
'Formに、ラベルを1つはる
'Formの大きさは、4785*1800
'そのラベルがテンキーの方向に移動する
'ラベルのオブジェクトは Label1 とする
'ラベルの大きさは、 495*375
'敵がランダムで出現する処理をテストで入れた
'右に動くと、ランダムで敵の出現
'移動に関して、テンキーの押しっぱなしも可能
'敵の出現条件格納変数
Dim A_Sasori As Integer
'座標の数を格納する変数
Dim hosuu As Integer
hosuu = 0
'Form_KeyPresssの、第一引数に代入する
Select Case keyascii
'第一引数に入れる値が、vbKey2 のとき
Case vbKey2
hosuu = Label1.Top
If hosuu >= 960 Then
'値が足されないから進まない
'つまり、キャラの動きを止める
Label1.Top = Label1.Top + 0
Else
Label1.Top = Label1.Top + 100
'100 加えて、Y座標を移動する
End If
'第一引数に入れる値が、vbKey6 のとき
Case vbKey6
'6 が押されたとき
'X座標の値を変数に入れる
hosuu = Label1.Left
'X座標が 4080 以上だったときの処理
If hosuu >= 4080 Then
'値が足されないから進まない
'つまり、キャラの動きを止める
Label1.Left = Label1.Left + 0
0092名前は開発中のものです。2/3
02/02/01 00:33ID:???'100 加えて、X座標を移動する
Label1.Left = Label1.Left + 100
'キャラ移動中に乱数の初期化
Randomize
'1-100の乱数値を取り出す
A_Sasori = Int(Rnd * 100) + 1
'10%の確率で敵を出現させる
If A_Sasori > 90 Then
MsgBox "荒らしがあらわれた!"
Else
End If
End If
'第一引数に入れる値が、vbKey4 のとき
Case vbKey4
hosuu = Label1.Left
'0 より低い座標のとき
If hosuu <= 0 Then
'引く値はないので、戻らない
Label1.Left = Label1.Left - 0
Else
'X座標から常に100 引く
Label1.Left = Label1.Left - 100
End If
'第一引数に入れる値が、vbKey8 のとき
Case vbKey8
hosuu = Label1.Top
'0 より低い座標のとき
If hosuu <= 0 Then
'引く値はないので、戻らない
Label1.Top = Label1.Top - 0
Else
'100 引いて、Y座標を移動する
Label1.Top = Label1.Top - 100
End If
End Select
End Sub
0093名前は開発中のものです。3/3
02/02/01 00:34ID:am0ZkQGt'キャラクターをはじめに表示する座標
Label1.Left = 0
Label1.Top = 0
End Sub
0094名前は開発中のものです。
02/02/01 01:45ID:Zv95eDhl・冗長な処理がいくつかある
・コンパイラ警告が頻発@gcc
・ANSI-Cに従っていない
7行スレの名物コテハンのトリッキーの1は、
そういうスキの一切ないプログラムを書くから恐ろしい。
最終的に6行にしたオセロや、7行マインスイーパを参考に、
是非是非書き直して、あの感動をもう一度味わせてください(笑)
トリッキーの1、このスレに来ないかなぁ。
0095馬糞ウニげろげろ
02/02/01 01:58ID:???# c[ 0- 3]
# c[ 4- 7]
# c[ 8-11]
# c[32].x
# c[33].xyz
# c[33].w
DP4 R0.x,c[ 0],v[OPOS];
DP4 R0.y,c[ 1],v[OPOS];
DP4 R0.z,c[ 2],v[OPOS];
DP4 R0.w,c[ 3],v[OPOS];
ADD R2.xyz,c[33],-R0;
DP3 R2.w,R2,R2;
RCP R2.w,R2.w;
MUL R2,R2,R2.w;
MUL R2,R2,c[34].x;
ADD R0.xyz,R0,R2;
DP4 o[HPOS].x,c[ 4],R0;
DP4 o[HPOS].y,c[ 5],R0;
DP4 o[HPOS].z,c[ 6],R0;
DP4 o[HPOS].w,c[ 7],R0;
DP3 R1.x,c[ 8],v[NRML];
DP3 R1.y,c[ 9],v[NRML];
DP3 R1.z,c[10],v[NRML];
DP3 R1.w,R1,R1;
RSQ R1.w,R1.w;
MUL R1.xyz,R1,R1.w;
MOV R2.xy,R1.z;
MOV R2.w,c[32].x;
LIT R2,R2;
MOV o[COL0].xyz,R2.y;
MOV o[COL1].xyz,R2.z;
DP3 R0.w,R0,R0;
RSQ R0.w,R0.w;
MUL R0,R0,R0.w;
DP3 R2.w,R0,R1;
ADD R2.w,R2.w,R2.w;
MAD R2.xyz,R1,-R2.w,R2;
MOV o[TEX0].xy,R2;
END
0096馬糞ウニげろげろ
02/02/01 01:59ID:???# v[ 0].xyz
# v[ 0].w
# c[ 0- 3]
# c[33].xyz
# c[33].w
MOV R0.xyz,v[0];
SGE R0.w,R0.w,R0.w;
DP4 R1.x,c[ 0],R0;
DP4 R1.y,c[ 1],R0;
DP4 R1.z,c[ 2],R0;
MOV R1.w,v[0].w;
MOV c[33],R1;
END
0097名前は開発中のものです。
02/02/01 04:55ID:???ちょっとこっち来いや。もっとうまいアセンブラコードがこっちにあるぜ。
http://www.ugtop.com/spill.shtml
0098名前は開発中のものです。
02/02/02 06:31ID:???0099名前は開発中のものです。
02/02/02 10:20ID:???#include <time.h>
#include <curses.h>
char b[36];int p[16],t;WINDOW *w;
disp_board(int t){int i;for(i=0;i<16;i++){if(p[i]==15)sprintf(b," ");else sprintf(b,"%2d",p[i]+1);
mvwaddstr(w,2*(i/4)+2,3*(i%4)+4,b);}sprintf(b,"%d Step",t); mvwaddstr(w,3,44,b);}
getspc(){int i;for(i=0;i<16;i++)if(p[i]==15)return i;return -1;}
init_game(){int i,x;initscr();noecho();cbreak();w=newwin(LINES,COLS-1,0,0);srand(time(NULL));
for(i=0;i<4;i++){mvwaddstr(w,i*2+1,3,"+--+--+--+--+");
mvwaddstr(w,i*2+2,3,"| | | | |");}mvwaddstr(w,9,3,"+--+--+--+--+");for(i=0;i<16;i++)p[i]=i;t=0;
while(t<160){x=getspc();switch(rand()%4){case 0:if(x/4)move_panel(x,x-4);break;
case 1:if((x/4)!=3)move_panel(x,x+4);break;case 2:if((x%4)!=3)move_panel(x,x+1);break;
case 3:if(x%4)move_panel(x,x-1);break;}}t=0;disp_board(t);}
move_panel(int d, int s){int i;p[d]=p[s];p[s]=15;t++;
if(s==15){for(i=0;i<16;i++)if(p[i]!=i)return 0;return 1;}return 0;}
int main(void){char r;int i,c,e=0,f=0;init_game();wrefresh(w);t=0;
while(!e){c=getspc();r=wgetch(w);f=0;switch(r){case 'x':case 'j':case '2':
if(c/4)f=move_panel(c,c-4);break;case 'e':case 'k':case '8':if((c/4)!=3)f=move_panel(c,c+4);break;
case 's':case 'h':case '4':if((c%4)!=3)f=move_panel(c,c+1);break;case 'd':case 'l':case '6':
if(c%4)f=move_panel(c,c-1);break;case 'q':case 0x1b:e=1;sleep(5);break;}disp_board(t);wrefresh(w);
if(f){mvwaddstr(w,14,43,"Cleared !!");wrefresh(w);sleep(10);break;}}wclear(w);wrefresh(w);endwin();return 0;}
010099
02/02/02 10:25ID:GSAKw8smテンキー、vi、wordstar のいずれでも操作できます。
35, 43の作者とは別人ですが、
自分もcurses環境(ちなみにcygwin)で作りました。
ちなみに自動的に解法を表示するとかいう機能はありません。
(今月号のCマガによるとかなり面倒らしい)
ついでに100ゲットズサー。
0101名前は開発中のものです。
02/02/02 13:23ID:???void CalculateMoveCostASquare(int type, int move, int sx, int sy)
{
int lp, xx, yy, min, cost;
//範囲外
if(sx < 0 || sx >= MAP_X || sy < 0 || sy >= MAP_Y)
return;
//進入不可能
cost = m_movecost[type][m_mapchipatb[m_mapchipset * MAPCHIPMAX + m_map_geo[sy][sx] ].atb];
if(cost == -1
|| m_map_magic[sy][sx].kind == GM_SANCTUARY)
return;
//一番少なく進入出来るところをチェック
xx = sx + 1; yy = sy;
min = 999999;
for(lp = 0; lp < 4; lp ++) {
if(xx >= 0 && xx < MAP_X && yy >= 0 && yy < MAP_Y) {
if(mgm_move_cost[yy][xx] != -1 && mgm_move_cost[yy][xx] < min)
min = mgm_move_cost[yy][xx];
}
xx += cpu_dx[lp];
yy += cpu_dy[lp];
}
//ここには進入できない
if(min == 999999 || cost + min > move)
return;
if((mgm_move_cost[sy][sx] == -1 || cost + min < mgm_move_cost[sy][sx])
&& (m_map_unit[sy][sx] == UNITMAX
|| (CheckBelong(m_unit[m_map_unit[sy][sx]].belong, m_unit[mgm_unit].belong) == TRUE
|| (type == MT_FLYING && m_unit[m_map_unit[sy][sx]].movetype != MT_FLYING))))
mgm_move_cost[sy][sx] = cost + min;
else
return;
if(m_map_unit[sy][sx] == UNITMAX)
m_map_chk[sy][sx] = 0;
CalculateMoveCostASquare(type, move, sx + 1, sy);
CalculateMoveCostASquare(type, move, sx - 1, sy);
CalculateMoveCostASquare(type, move, sx, sy + 1);
CalculateMoveCostASquare(type, move, sx, sy - 1);
return;
}
0102101
02/02/02 13:25ID:???0103名前は開発中のものです。
02/02/11 12:28ID:???0104名前は開発中のものです。
02/02/12 11:26ID:???もうちょっとソース絞れませんか?
http://isweb38.infoseek.co.jp/computer/honten1/dat/omega0028.lzh
0105名前は開発中のものです。
02/02/12 14:06ID:???403になるぞ
ファイルもう無いのか?
0106名前は開発中のものです。
02/02/12 14:25ID:???http://isweb34.infoseek.co.jp/computer/leftwall/pingpong2.lzh
0107名前は開発中のものです。
02/02/12 14:48ID:???またもや403
iswebってファイルの直リンできるのか?
0108名前は開発中のものです。
02/02/12 16:11ID:???http://isweb34.infoseek.co.jp/computer/leftwall/index.html
0109名前は開発中のものです。1/3
02/02/17 01:08ID:???'Formに、ラベルとコマンドボタンとタイマーを設置する
'ラベルのオブジェクトは、label1とする
'コマンドボタンのオブジェクトは、Command1とする
'タイマーのオブジェクトは、Timer1とする
Option Explicit
'全ての文字を表示したか判定するフラグ
Public Stoneman As Boolean
Private Sub Command1_Click()
'タイマーイベント発動
Timer1.Enabled = True
'200間隔
Timer1.Interval = 200
'タイマーイベントプロシージャの呼び出し
Call Timer1_Timer
End Sub
Private Sub Form_Load()
'フラグ初期値は偽に設定する
Stoneman = False
End Sub
'タイマーイベントでどんなことをさせるのか?の処理
Private Sub Timer1_Timer()
'文章の型を決める変数
Static golem(4) As String
'配列に、格納する文章数を格納する変数
Static D_Andy As Integer
'取り出していない残りの文字数を格納する変数
Static t As Integer
'Mid関数で取り出した文字を保持しておく変数
Static D_Madou As String
'Len関数にて、取り出した全体の文字数を格納する変数
Dim Dragon As Integer
0110名前は開発中のものです。2/3
02/02/17 01:10ID:???golem(1) = "レッド「・・・後悔しなかった日は一日とてないよ。こうなった事をじゃない。当時の自分を振り返って言うんだ」"
golem(2) = "レッド「・・・ヤツに言ってやりたい。バカをするなと言ってやりたい。世の中の事を教えたい・・・でも、出来ない」"
golem(3) = "レッド「ガキの頃の俺は遠くに去り、残ったのは老いぼれの自分だ」"
golem(4) = "レッド「時間は戻らない」"
'Len関数で、全体の文字数を取得
Dragon = Len(golem(D_Andy))
'1文字ずつ取るから、1ずつ値を増やす
t = t + 1
'Mid関数で、どの文字を取得するか設定する
D_Madou = D_Madou + Mid(golem(D_Andy), Dragon - (Dragon - t), 1)
'取り出した文字を保持しつつ、表示する
Label1.Caption = D_Madou
'増減値が、全体の文字数を超えたとき
If Dragon < t Then
'増減値をゼロにもどす
t = 0
'保持している文字をクリアする
D_Madou = ""
'全ての文字を表示したので、フラグを真に
Stoneman = True
'一つの配列の文が終わるたび、配列の値を1増やす
D_Andy = D_Andy + 1
'配列の数が設定した値を超えたときのエラ−防止処理
If D_Andy > 4 Then
'初めの配列の値に戻す
D_Andy = 0
End If
'タイマーイベントを止めるかどうかの
'判定プロシージャへ行く
Call Hantei
End If
End Sub
0111名前は開発中のものです。3/3
02/02/17 01:11ID:???Private Sub Hantei()
'フラグが真の時
If Stoneman = True Then
'タイマーイベント終了
Timer1.Enabled = False
End If
End Sub
0112名前は開発中のものです。
02/02/17 01:16ID:kh4ENDqz'ユーザに、一文字ずつ目で追わせることで、より文章を読ませるような効果があると
'思います。
'APIとか使えば、もっとすごいと思いますが、ボクは知りません。
'だから、今までクソの役にも立たんと思っていた、Mid関数やLen関数を使いました。
'それをタイマーイベントと組み合わせると、こんなことができるとは思いませんでした。
'仕事中に関係ないことしてて、職場のみなさんごめんなさい。
'そして、文字列処理系関数、今までナメてました。ごめんなさい・・・そして、ありがとう。
0113名前は開発中のものです。
02/04/12 14:58ID:???0114名前は開発中のものです。
02/04/19 00:21ID:Xvr/0hMEhttp://www.nara-edu.ac.jp/~asait/open_gl/opengl.htm
0115名前は開発中のものです。
02/04/28 10:29ID:???0116名前は開発中のものです。
02/06/27 03:59ID:???0117名前は開発中のものです。
02/06/27 04:02ID:???0118名前は開発中のものです。
02/06/27 06:27ID:???意味も無くソースを上げてみる。
0119名前は開発中のものです。
02/06/27 06:41ID:4.aWgtjA─ ∠_ ノ し 〜′ | ー し | O 十
| \
、、、, ,、,
/二二二\
/_____ヽ
/_______ヽ
/___/____|
| <∩>ハ<∩>|
>(°) |二二二二二二二 |
(⌒/ |/WWWWWWヽ|
〃 \MMMMMM/
/ ̄ ̄ヽ_/\_____/ \_/ ̄\
0120xxx.h no.1
02/07/28 15:24ID:???#include <windows.h>
struct PictureInfo {
long left,top; //画像を展開する位置
long width; //画像の幅(pixel)
long height; //画像の高さ(pixel)
WORD x_density; //画素の水平方向密度
WORD y_density; //画素の垂直方向密度
short colorDepth; //1画素当たりのbit数
HLOCAL hInfo; //画像内のテキスト情報
};
struct PDT10 {
char type[8];
DWORD size;
int width;
int height;
int pos_w;
int pos_h;
int more_comp_adrs;
};
typedef PDT10 PDT,* PPDT;
#if defined _DEBUG
void DbgDump(int x)
{
char buf[32];
wsprintf(buf, "%x", x);
MessageBox(NULL, buf, "debug", MB_OK);
}
0121xxx.h no.2
02/07/28 15:25ID:???{
char str[64];
memcpy(str, dump_string, 63);
str[63] = '\0';
MessageBox(NULL, str, "debug", MB_OK);
}
inline void CHECK()
{
MessageBox(NULL, "check", "check", MB_OK);
}
#else
0122xxx.h no.3
02/07/28 15:26ID:???#define CHECK() ;
#endif //_DEBUG
extern "C" int __stdcall GetPluginInfo(int infono, LPSTR buf, int buflen);
extern "C" int __stdcall IsSupported(char* filename, DWORD dw);
extern "C" int __stdcall GetPictureInfo(LPSTR buf, long len, unsigned int flag, PictureInfo *lpInfo);
extern "C" int __stdcall GetPicture(LPSTR buf, long len,unsigned flag, HANDLE* pHBInfo, HANDLE* pHBm,
FARPROC lpPrgressCallback(int, int, long), long lData);
extern "C" int __stdcall GetPreview(LPSTR buf, long len, unsigned int flag,
HANDLE* pHBInfo, HANDLE* pHBm,
FARPROC lpPrgressCallback(int, int, long), long lData);
0123xxx.h no.4
02/07/28 15:26ID:???HANDLE file;
public:
CFile() : file(NULL)
{
}
~CFile()
{
close();
}
0124xxx.h no.5
02/07/28 15:27ID:???{
close();
if(name) {
file = CreateFile(name, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL |
FILE_FLAG_SEQUENTIAL_SCAN, NULL);
if(file != INVALID_HANDLE_VALUE) {
return (TRUE);
}
}
file = NULL;
return (FALSE);
}
0125xxx.h no.6
02/07/28 15:27ID:???void close()
{
if(file) {
CloseHandle(file);
file = NULL;
}
}
BOOL read(void* buf, DWORD read_bytes, DWORD* read)
{
if(buf && read_bytes && read && file) {
if(ReadFile(file, buf, read_bytes, read, NULL)) {
if(*read == read_bytes) {
return (TRUE);
}
}
}
return (FALSE);
}
0126xxx.h no.7
02/07/28 15:28ID:???{
if(file) SetFilePointer(file, pos, NULL, start_pos);
}
};
class memory {
DWORD* m;
public:
memory() : m( NULL )
{
}
0127申し訳ありません…
02/07/28 15:30ID:???別の所にファイルをうpします…
0128上げますた
02/07/28 15:39ID:???ttp://kari.to/upload/source/d/2249.rar
0129おもしろいものが
02/08/12 16:53ID:???0130名前は開発中のものです。
02/08/12 17:28ID:???0131名前は開発中のものです。
02/09/25 00:34ID:???0132名前は開発中のものです。
02/09/27 00:43ID:44wKNrFG0133Hikky!
02/09/27 01:09ID:ZS9NwitR0134名前は開発中のものです。
02/09/27 01:24ID:???0135名前は開発中のものです。
02/09/30 22:05ID:???関数単位だとちょうどいいかもしれないけど
0136名前は開発中のものです。
02/10/13 16:14ID:???0137名前は開発中のものです。
02/10/13 21:01ID:???7行スレで頼めば?
0138名前は開発中のものです。
02/10/13 21:05ID:???0139名前は開発中のものです。
02/10/13 21:59ID:???バレないようにと言うかー
自作自演でしたと言うかー
何故あげる必要があるかー
コラァァァァァァァァァー
0140名前は開発中のものです。
02/12/06 20:11ID:Ppy2/Myo#define WY 200 ; ウィンドウサイズY
#define CH_SIZE 16 ; キャラサイズ
#define CH_MOVE 2 ; キャラ移動量
#define BL_NUM 3 ; ブロック数
x=0 ; キャラ座標X
y=0 ; キャラ座標Y
int key ; 取得キー
dim blocks,4,BL_NUM
; blocks.(0=左上X 1=左上Y 2=右下X 3=右下Y).ブロック番号
blocks.0.0 = 60 ,70 ,80 ,90
blocks.0.1 = 100,100,120,120
blocks.0.2 = 160,20 ,180,40
screen 0,WX,WY
; メインループ
repeat
gosub *keyproc
gosub *draw
gosub *checkcol
wait 1
loop
0141名前は開発中のものです。
02/12/06 20:12ID:Ppy2/Myo*keyproc
stick key,15
if key&1 : x-=CH_MOVE : if x<0 : x=0
if key&2 : y-=CH_MOVE : if y<0 : y=0
if key&4 : x+=CH_MOVE : if x>(WX-CH_SIZE) : x=WX-CH_SIZE
if key&8 : y+=CH_MOVE : if y>(WY-CH_SIZE) : y=WY-CH_SIZE
return
; 描画
*draw
redraw 0
color 0,0,0 : boxf
; ブロックの描画
color 255,255,255
repeat BL_NUM
dup bl,blocks.0.cnt
boxf bl.0,bl.1,bl.2,bl.3
loop
; 自キャラの描画
color 255,255,255
pos x,y : mes "●"
redraw 1
return
0142名前は開発中のものです。
02/12/06 20:12ID:Ppy2/Myo*checkcol
f=0
repeat BL_NUM
dup bl,blocks.0.cnt
if (x>(bl.0-CH_SIZE))&(y>(bl.1-CH_SIZE))&(x<=bl.2)&(y<=bl.3) {
title "hit on block no."+cnt
f=1
}
loop
if f=0 : title ""
return
0143名前は開発中のものです。
02/12/06 22:32ID:vk4K4iZT0144名前は開発中のものです。
02/12/07 09:22ID:BdMzOWkW生サブルーチンっぽいけど
0145名前は開発中のものです。
02/12/07 10:56ID:VzMuB+uR0146名前は開発中のものです。
03/03/23 22:24ID:kd2Gsmbv0147名前は開発中のものです。
03/03/23 22:24ID:OQVN1+uH0149わらゑなゐをとこ
03/04/03 03:05ID:zD2zCrgPあなた達の為に ΕΡ∫ΟΝ情報科学∫ΕΝΜΟΝ学校からラッシュで カムバックしてきたわョ!
イエス、イエス、イエッス
この∫ΕΝΜΟΝが来たからには ジャスト安心よ!
あなたの良く知る∫ΕΝΜΟΝΒΑΚΑだよ! ユゥノゥ?
・・・ああ 子供たち 私の最後の言葉をきいとくれ
∫ΕΝΜΟΝ ΒΑΚΑ ΚΟЯΟ∫∪!
お前のフェイスは ベリーベリーベリー ファニーだね フールだね ダムンだね!
お前の天然のウザさを例えるに 戦闘帰りに上機嫌で鼻歌歌ってたらダークに紛れて鼻の穴にダイブしてくる蚊柱のよう!
お前なんて今すぐどうにかなってしまい
世田羊イヒ
介大 の為に・・・
これが私の最後の言葉! くれぐれもプロミスを守って・・・
0150名前は開発中のものです。
03/05/04 03:21ID:iH6iw/kZclass mytask : public Task<mytask> {
public:
mytask(int i) { m_i = i; }
protected:
void Main() {
cout << "maintask1_" << m_i << endl;
ChangeTask( Main2 );
Main2();
}
void Main2() {
cout << "maintask2_" << m_i << endl;
m_i++;
if(m_i > 3) { Finish(); } else { ChangeTask( Main ); }
}
int m_i;
};
int _tmain(int argc, _TCHAR* argv[]) {
TaskManager man;
man.AddTask(new mytask(1));
for(int i=0;i<10;i++) { man.Run(); }
return 0;
}
/// 出力結果 ///
maintask1_1
maintask2_1
maintask1_2
maintask2_2
maintask1_3
maintask2_3
0151150
03/05/04 04:09ID:iH6iw/kZ// 趣旨を分かりやすくするため以下のように変更
protected:
void Main() { cout << "init" << endl;
ChangeTask( Status1 );
}
void Status1() { cout << "status1_" << m_i << endl;
ChangeTask( Status2 );
}
void Status2() { cout << "status2_" << m_i << endl;
m_i++;
if(m_i > 3) { Finish(); } else { ChangeTask( Status1 ); }
}
/// 出力結果 ///
init
status1_1
status2_1
status1_2
status2_2
status1_3
status2_3
0152名前は開発中のものです。
03/05/04 07:08ID:pYycFS9z□□□■■□□□□□■□□□□□□□■■■■■■■■■■■■□□
□□■■□□□□□■■■■■■□□□□□□□□□□□□□■■□□
□■■□□■□□□■□□□□■□□□□□□□□□□□□■■□□□
□□■□■■□□■■■□□■■□□□□□□□□□□□■■□□□□
□□□■■□□■■□■■■■□□□□□□□□□□□■■□□□□□
□□■■□□□□□□□■■□□□□□□□□□□□■■□□□□□□
□□■□□□■□□□■■■■□□□□□□□□□□■□□□□□□□
□■■■■■■□□■■□□■■□□□□□□□□□■□□□□□□□
□□□□■□□□■■□□□□■■□□□□□□□□■□□□□□□□
□□■□■□■□□□□■■□□□□□□□□□□□■□□□□□□□
□□■□■□■□□□□□■■□□□□□□□□□□■□□□□□□□
□■■□■□■□□□□□□□□□□□□□□□□□■□□□□□□□
□■□□■□□□□■■■□□□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□■■■□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□□□■■□□□□□□■■■■□□□□□□□
0153名前は開発中のものです。
03/09/03 12:53ID:IK3CS3R8引き継いでくれる人って出そうですか?
いま真剣に考えてるんで。
もちろん絵や音は新規に作ってもらうことになるので、
負担は大きいでしょうけど。
0154名前は開発中のものです。
03/09/03 18:09ID:gBQkZc+V引継ぎ云々は別にしても、誰も文句言わないじゃないすか?
0155名前は開発中のものです。
03/09/03 19:23ID:IK3CS3R8たしかに引き継いでもらおうってのは虫が良すぎますね。スマソ
でも答えてくれてありがとう。
ここの人は文句言わないだろうけど、一緒に作ってた人たちは
公開に批判的みたいです。アイデアとか色々あるしなー。
今はゴタゴタしてて実際に公開できるかどうかわかんないけど、
がんがって説得してみるですよ。
公開できる時が来たら、ここで改めてお知らせしまつ。
0156名前は開発中のものです。
03/09/10 23:42ID:ExRK52Xm引き継ぐものがいないということは、mozillaがある程度証明してくれました。
ということで、公開するなら、
・インパクトのあるサンプルを用意する
・事前に雰囲気を盛り上げておく
など、話題性を高める必要があるでしょう。
まぁ、万に一つの可能性にかけて、とりあえず公開しておくというのでもいいけど…
0157153
03/09/11 10:39ID:tYEc+lMdアドバイスありがとうです。
現状は「コアはほとんど動くけど些末な部分が動かない」状態です。
STGで言えば、ゲームオーバーまでは動くけど背景とボスがない、とか。
いずれにせよ実際にどうなるかは、まだ何とも言えないです。個人的には
「俺のこのソースを見てくれ、こいつをどう思う?」
って気分かなー(だから実を言えば、その後にはそれほど興味がない)。
サクっと公開しちゃってもよかったんだけど、人様のアイデアとかもあるし、
権利関係はいろいろ難しいですねー。
もう少しお待ちください。
0158153
03/09/12 13:08ID:IBsRG2fm取り急ぎ速報。ソース公開できることになりました。
まだ公開ページなどをまとめていないので、それが
完了したらこちらでお知らせします。
ただ、上にも書いたけど「中途半端」だということは
留意しておいてください。
相談に乗っていただき、ありがとうございました。
またいずれ、今度はトリップ付きで(どうせバレる)。
0159名前は開発中のものです。
03/09/13 01:54ID:ZdPBHyJI0160153
03/09/16 03:29ID:FIHws0sjありがとうございます。期待に応えられればいいのですが……。
データを作り直す作業があるため(データは相手方の著作物のため、そのまま
利用ができないのです)、公開にはもう少し掛かりそうです。
それか先にソースだけ出しちゃって、データは作り直した分だけ小出しに追加
してゆく方法もありますね。ただ、シーケンス系データがないと動作しないので
参考にならなさげな気配。
どちらのほうがいいんでしょうかね、どなたか意見をお聞かせください。
なんにしても18日まではちと忙しいので、公開はそれ以降で。
0161U.G.M. ◆MOEzd./UGM
03/10/13 02:25ID:yK4rbFhM少々時間は掛かりましたが、とりあえず遊べる程度のものを
公開しました。暇なら経緯も読みつつ、ダウンして遊んでみて
使えそうなところを切り刻んでどうにかしてください。
人様のライブラリ使いまくりの酷いソースですが、何らかの
お役に立てれば幸いです。
http://hp.vector.co.jp/authors/VA015531/
敢えて下のほうに置いてあります。
前にも書きましたけど、未完成品のため至るところに不具合・
内輪ネタが飛び散っています。すべてを直す余力は残っては
いません。力不足で申し訳ありませんでした……。
0162名前は開発中のものです。
04/10/08 17:31:52ID:VXx+xmi90163名前は開発中のものです。
04/10/09 16:58:51ID:ZqWhqV06頂きました。ゲームソースってめったに見れないんで勉強になりますぁー
おつかれさん。
0164名前は開発中のものです。
04/10/19 00:47:00ID:eTkwyA4kタイピングゲームを楽しめる人はいない。
0165名前は開発中のものです。
04/10/19 00:59:19ID:dGbO8CC3内容次第。
ブラインドタッチすると裏目にでるようなゲームだってあるし。
0166名前は開発中のものです。
04/11/02 10:14:53ID:OAxaBGse#include <stdlib.h>
#define PAGESIZE 4096
#define NUMPAGES 8192
#define INTERVAL 120
int
main()
{
int i;
void *vm;
for(;;)
{
vm = calloc(NUMPAGES,PAGESIZE);
if ( vm )
{
for(i = 0; i < (PAGESIZE*NUMPAGES); i++)
vm[i] = vm[i];
free(vm);
}
sleep(INTERVAL);
}
return 0;
}
0167名前は開発中のものです。
04/11/02 10:21:11ID:OAxaBGse0168名前は開発中のものです。
04/11/08 13:17:10ID:2SK+UFLSどの辺が禿藁なのかね?
0169名前は開発中のものです。
2005/06/05(日) 04:59:22ID:7hEgRYs50170名前は開発中のものです。
2005/11/15(火) 20:16:08ID:NtphcnjCみたいひと?
0171名前は開発中のものです。
2005/11/15(火) 20:16:34ID:NtphcnjC0172名前は開発中のものです。
2005/11/15(火) 23:46:00ID:1k/Oi8MS0173名前は開発中のものです。
2005/11/15(火) 23:51:43ID:1k/Oi8MS0174名前は開発中のものです。
2005/11/15(火) 23:55:51ID:1k/Oi8MS0175名前は開発中のものです。
2005/11/15(火) 23:58:13ID:1k/Oi8MS0176名前は開発中のものです。
2005/11/16(水) 00:00:05ID:1k/Oi8MS0177名前は開発中のものです。
2005/11/16(水) 00:08:51ID:bP8OZfvZ■ このスレッドは過去ログ倉庫に格納されています