約 2,963,647 件
https://w.atwiki.jp/bullockx/pages/10.html
https //www.toptoppost.com A man was going to the house of some rich person. As he went along the road, he saw a box of good apples at the side of the road. He said, "I do not want to eat those apples; for the rich man will give me much food; he will give me very nice food to eat." Then he took the apples and threw them away into the dust. He went on and came to a river. The river had become very big; so he could not go over it. He waited for some time; then he said, "I cannot go to the rich man s house today, for I cannot get over the river." He began to go home. He had eaten no food that day. He began to want food. He came to the apples, and he was glad to take them out of the dust and eat them.
https://w.atwiki.jp/pokecharaneta/pages/9308.html
ASOBLOCK ベーシックライン コメント 2011年に発売された玩具。 ベーシックライン サメハダー:スペシャルパック402S ネクロズマ:ベーシックパック251K コメント 名前 コメント すべてのコメントを見る 草案 ベーシックライン ネクロズマ:ベーシックパック251K -- (ユリス) 2017-06-11 15 34 53
https://w.atwiki.jp/sampleisbest/pages/207.html
開発環境 Microsoft Visual C# 2010 Express (SP1) 実行環境 Microsoft Windows XP Home Edition (SP3) プロジェクトの種類 Windows Game (4.0) プロジェクト名 XnaBlock Block Builder(仮) Texture4.png Palette16.png Game1.cs // #1 using System; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; namespace XnaBlock { class Game1 Game { GraphicsDeviceManager graphics; SpriteBatch sprite; SpriteFont font; Effect effect; Texture2D texture; // fps DateTime prevTime; int draw = 0; int fps = 0; const int gridSize = 100; const int blockMax = 20000; short blockNum = 0; short[] grid; VertexBuffer instanceBuffer; VertexBuffer geometryBuffer; IndexBuffer indexBuffer; VertexDeclaration instanceVertexDeclaration; VertexBufferBinding[] bindings; Matrix projection; // カメラ Vector3 camPos = new Vector3(50.5f, 1.5f, 50.5f); int camLat = 0; int camLong = 225; readonly int[] dirX = { 1, 1, 0, -1, -1, -1, 0, 1, 1 }; readonly int[] dirZ = { 0, 1, 1, 1, 0, -1, -1, -1, 0 }; struct InstanceInfo { public Matrix World; public Vector2 AtlasCoordinate; } struct Position { public int X; public int Y; public int Z; public Position(int x, int y, int z) { X = x; Y = y; Z = z; } } public Game1() { graphics = new GraphicsDeviceManager(this); graphics.PreferredBackBufferWidth = 1280; graphics.PreferredBackBufferHeight = 720; Content.RootDirectory = "Content"; IsMouseVisible = true; } protected override void Initialize() { sprite = new SpriteBatch(GraphicsDevice); prevTime = DateTime.Now; base.Initialize(); } protected override void LoadContent() { // ソリューション エクスプローラーの(Content)に追加しておく font = Content.Load SpriteFont ("SpriteFont1"); // 新しい項目:Sprite Font effect = Content.Load Effect ("HardwareInstancing"); // 新しい項目:Effect File (.fx) texture = Content.Load Texture2D ("Palette16"); // 既存の項目:Palette16.png GenerateGeometryBuffers(0.5f); GenerateInstanceVertexDeclaration(); GenerateInstanceInformation(); bindings = new VertexBufferBinding[2]; bindings[0] = new VertexBufferBinding(geometryBuffer, 0); bindings[1] = new VertexBufferBinding(instanceBuffer, 0, 1); projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.ToRadians(45), GraphicsDevice.Viewport.AspectRatio, 0.1f, 2000); effect.CurrentTechnique = effect.Techniques["Instancing"]; effect.Parameters["cubeTexture"].SetValue(texture); base.LoadContent(); } void GenerateGeometryBuffers(float size) { VertexPositionTexture[] vertices = new VertexPositionTexture[24]; for (int n = 0; n 4; n++) { float u = size * ((n 1) * 2 - 1); float v = size * ((n 2) - 1); vertices[0 + n].Position = new Vector3(u, size, v); vertices[4 + n].Position = new Vector3(u, -size, -v); vertices[8 + n].Position = new Vector3(-size, -v, u); vertices[12 + n].Position = new Vector3(u, -v, size); vertices[16 + n].Position = new Vector3(size, -v, -u); vertices[20 + n].Position = new Vector3(-u, -v, -size); } for (int n = 0; n 24; n++) { vertices[n].TextureCoordinate = new Vector2(n 1, (n 1) 1); } geometryBuffer = new VertexBuffer(GraphicsDevice, typeof(VertexPositionTexture), 24, BufferUsage.WriteOnly); geometryBuffer.SetData(vertices); int[] indices = new int[36]; for (int n = 0; n 6; n++) { int n6 = n * 6; int n4 = n * 4; indices[n6 + 0] = n4 + 0; indices[n6 + 1] = n4 + 1; indices[n6 + 2] = n4 + 2; indices[n6 + 3] = n4 + 1; indices[n6 + 4] = n4 + 3; indices[n6 + 5] = n4 + 2; } indexBuffer = new IndexBuffer(GraphicsDevice, typeof(int), 36, BufferUsage.WriteOnly); indexBuffer.SetData(indices); } void GenerateInstanceVertexDeclaration() { VertexElement[] elements = new VertexElement[5]; for (int n = 0; n 4; n++) // Matrix = Vector4 * 4 { elements[n] = new VertexElement(sizeof(float) * 4 * n, VertexElementFormat.Vector4, VertexElementUsage.TextureCoordinate, n + 1); } elements[4] = new VertexElement(sizeof(float) * 16, VertexElementFormat.Vector2, VertexElementUsage.TextureCoordinate, 5); instanceVertexDeclaration = new VertexDeclaration(elements); } void GenerateInstanceInformation() { instanceBuffer = new VertexBuffer(GraphicsDevice, instanceVertexDeclaration, blockMax, BufferUsage.None); // 読み込みもする grid = new short[gridSize * gridSize * gridSize]; // 地面 for (int z = 0; z gridSize; z++) { for (int x = 0; x gridSize; x++) { SetNewBlock(x, 0, z, 4); } } // 正8面体 for (int y = -10; y = 10; y++) { int x1 = 10 - Math.Abs(y); for (int x = -x1; x = x1; x++) { int z1 = x1 - Math.Abs(x); int z2 = (z1 == 0) ? 1 z1 * 2; for (int z = -z1; z = z1; z += z2) { SetNewBlock(10 + x, 20 + y, 30 + z, 3); } } } // 太陽 for (int y = -10; y = 10; y++) { for (int x = -10; x = 10; x++) { for (int z = -10; z = 10; z++) { int r = (x * x) + (y * y) + (z * z); if (90 r r 111) // 9.5^2 r^2 10.5^2 { SetNewBlock(30 + x, 20 + y, 10 + z, 2); } } } } } int GridIndex(int x, int y, int z) { return (y * gridSize + x) * gridSize + z; } void SetNewBlock(int x, int y, int z, byte color) { InstanceInfo[] ins = new InstanceInfo[1]; // stride = 4*(16+2) ins[0].World = Matrix.CreateTranslation(new Vector3(x + 0.5f, y + 0.5f, z + 0.5f)); ins[0].AtlasCoordinate = new Vector2((color 3) / 4.0f, (color 2) / 4.0f); instanceBuffer.SetData InstanceInfo (blockNum++ * 72, ins, 0, 1, 72); grid[GridIndex(x, y, z)] = blockNum; } short GetGrid(int x, int y, int z) { if (x 0 || gridSize = x || y 0 || gridSize = y || z 0 || gridSize = z) return Int16.MinValue; return grid[GridIndex(x, y, z)]; } Position GetForwardPos() { Position pos; int dir = (camLong + 22) / 45; pos.X = (int)camPos.X + dirX[dir]; pos.Y = (int)camPos.Y - 1; pos.Z = (int)camPos.Z + dirZ[dir]; return pos; } void SetGrid(Position pos, float u, float v, short index) { InstanceInfo[] ins = new InstanceInfo[1]; int start = (Math.Abs(index) - 1) * 72; instanceBuffer.GetData InstanceInfo (start, ins, 0, 1, 72); ins[0].AtlasCoordinate = new Vector2(u, v); instanceBuffer.SetData InstanceInfo (start, ins, 0, 1, 72); grid[GridIndex(pos.X, pos.Y, pos.Z)] = index; } void SetBlock(byte color) { Position pos = GetForwardPos(); short index = GetGrid(pos.X, pos.Y, pos.Z); if (0 index || index == Int16.MinValue) return; if (index == 0) { SetNewBlock(pos.X, pos.Y, pos.Z, color); } else { // 再利用 SetGrid(pos, (color 3) / 4.0f, (color 2) / 4.0f, (short)-index); } } void DelBlock() { Position pos = GetForwardPos(); short index = GetGrid(pos.X, pos.Y, pos.Z); if (index = 0) return; // 論理削除 SetGrid(pos, 2.0f, 0, (short)-index); } protected override void Update(GameTime gameTime) { KeyboardState state = Keyboard.GetState(); if (state[Keys.Escape] == KeyState.Down) Exit(); if (state[Keys.W] == KeyState.Down) MoveXZ(0); if (state[Keys.S] == KeyState.Down) MoveXZ(180); if (state[Keys.A] == KeyState.Down) MoveXZ(-90); if (state[Keys.D] == KeyState.Down) MoveXZ(90); if (state[Keys.Up] == KeyState.Down) camLat++; if (state[Keys.Down] == KeyState.Down) camLat--; if (state[Keys.Left] == KeyState.Down) camLong = (camLong + 359) % 360; if (state[Keys.Right] == KeyState.Down) camLong = (camLong + 1) % 360; if (state[Keys.PageUp] == KeyState.Down) MoveY(0.1f); if (state[Keys.PageDown] == KeyState.Down) MoveY(-0.1f); if (state[Keys.NumPad0] == KeyState.Down) DelBlock(); if (state[Keys.NumPad1] == KeyState.Down) SetBlock(1); if (state[Keys.NumPad2] == KeyState.Down) SetBlock(2); if (state[Keys.NumPad3] == KeyState.Down) SetBlock(3); if (state[Keys.NumPad4] == KeyState.Down) SetBlock(4); if (state[Keys.NumPad5] == KeyState.Down) SetBlock(5); if (state[Keys.NumPad6] == KeyState.Down) SetBlock(6); if (state[Keys.NumPad7] == KeyState.Down) SetBlock(7); if (state[Keys.NumPad8] == KeyState.Down) SetBlock(8); base.Update(gameTime); } void MoveXZ(int degree) { float rad = MathHelper.ToRadians(camLong + degree); float x = camPos.X + (float)Math.Cos(rad) * 0.1f; float z = camPos.Z + (float)Math.Sin(rad) * 0.1f; if (GetGrid((int)x, (int)camPos.Y, (int)z) = 0) { camPos.X = x; camPos.Z = z; } } void MoveY(float dy) { float y = camPos.Y + dy; if (GetGrid((int)camPos.X, (int)y, (int)camPos.Z) = 0) { camPos.Y = y; } } protected override void Draw(GameTime gameTime) { GraphicsDevice.Clear(Color.CornflowerBlue); GraphicsDevice.DepthStencilState = DepthStencilState.Default; float rad = MathHelper.ToRadians(camLat); float y = (float)Math.Sin(rad) + camPos.Y; float r = (float)Math.Cos(rad); rad = MathHelper.ToRadians(camLong); float x = camPos.X + (float)Math.Cos(rad) * r; float z = camPos.Z + (float)Math.Sin(rad) * r; Matrix view = Matrix.CreateLookAt(camPos, new Vector3(x, y, z), Vector3.Up); GraphicsDevice.Indices = indexBuffer; effect.Parameters["WVP"].SetValue(view * projection); effect.Parameters["totalTime"].SetValue( 0.01f * (float)gameTime.TotalGameTime.TotalMilliseconds); effect.CurrentTechnique.Passes[0].Apply(); GraphicsDevice.SetVertexBuffers(bindings); GraphicsDevice.DrawInstancedPrimitives( PrimitiveType.TriangleList, 0, 0, 24, 0, 12, blockNum); // フレームレート draw++; DateTime now = DateTime.Now; TimeSpan t = now - prevTime; if (t.TotalMilliseconds = 1000) { fps = draw; draw = 0; prevTime = now; } sprite.Begin(); string text = "fps=" + fps + " lat=" + camLat + " long=" + camLong + " block=" + blockNum; sprite.DrawString(font, text, new Vector2(0, 0), Color.White); text = string.Format("x={0 f1} y={1 f1} z={2 f1}", camPos.X, camPos.Y, camPos.Z); sprite.DrawString(font, text, new Vector2(0, 20), Color.White); sprite.End(); base.Draw(gameTime); } } } HardwareInstancing.fx /* #1 Effect File プロジェクトのプロパティ [XNA Game Studio]タブ Use HiDef to access the complete API */ float4x4 WVP; texture cubeTexture; float totalTime; sampler TextureSampler = sampler_state { texture = cubeTexture ; mipfilter = LINEAR; minfilter = LINEAR; magfilter = LINEAR; }; struct InstancingVSinput { float4 Position POSITION0; float2 TexCoord TEXCOORD0; }; struct InstancingVSoutput { float4 Position POSITION0; float2 TexCoord TEXCOORD0; }; InstancingVSoutput InstancingVS( InstancingVSinput input, float4x4 instanceTransform TEXCOORD1, float2 atlasCoord TEXCOORD5) { InstancingVSoutput output; float4 pos = input.Position; pos = mul(pos, transpose(instanceTransform)); //pos.y = (pos.y + totalTime * atlasCoord.x) % 100.0f; pos = mul(pos, WVP); output.Position = pos; output.TexCoord = float2( atlasCoord.x + (input.TexCoord.x / 4.0f), atlasCoord.y + (input.TexCoord.y / 4.0f)); return output; } float4 InstancingPS(InstancingVSoutput input) COLOR0 { if (2.0f = input.TexCoord.x) discard; return tex2D(TextureSampler, input.TexCoord); } technique Instancing { pass Pass0 { VertexShader = compile vs_3_0 InstancingVS(); PixelShader = compile ps_3_0 InstancingPS(); } }
https://w.atwiki.jp/blockquestkiti/pages/183.html
プレイ数10000またはプレイUU1000以上のステージをまとめました ステージIDを押すとステージのページに飛びます 2017/4/21 ユーザー名 プレイ数 プレイUU ステージID 備考 AXION 2873 1166 9812 BEN_BOY 6791 2015 149588 CHAMI 9822 1886 32214 CRAFT 2542 1124 122802 DAIGO 9283 1772 357 DAIGO 3859 1246 1130 DAIGO 5742 1206 1133 DAIGO 6211 2432 1441 DAIGO 4722 1666 2125 DAIGO 5844 1202 8690 DAIGO 5801 1179 9846 DAIGO 2535 1019 22452 DAIGO 2844 1128 25186 DAIGO 2447 1373 27362 DAIGO 6015 1655 27543 DAIGO 3044 1446 30261 DAIGO 20080 2902 42679 DAIGO 3543 1301 45570 DAIGO 14135 2627 47733 DAIGO 5422 1433 49754 DAIGO 4444 1262 53230 DAIGO 3968 1289 56594 DAIGO 3893 1282 61178 DAIGO 13549 1059 67525 DAIGO 7994 2514 71922 DAIGO 5094 1171 72629 DAIGO 9517 3061 74222 DAIGO 3956 1357 74267 DAIGO 3182 1313 83872 DAIGO 3503 1041 92175 DAIGO 3872 1290 92887 DAIGO 7832 2652 117749 DAIGO 15415 5206 121570 DAIGO 16371 4546 150761 DAIGO 6695 1036 150871 DAIGO 15400 4674 166924 DAIGO 9249 1812 193796 DAIGO 19028 4713 196100 DAIGO 22470 4184 272146 GLASS 8878 1134 171581 GLASS 5982 1109 283680 HYRULE 4199 1830 185218 第一回キャラコンテスト受賞ステージ LIMESTONE 9522 3689 242403 第二回キャラコンテスト受賞ステージ NUE 21379 1109 59 NUE 26120 4151 62 NUE 26041 3571 109 NUE 59082 5885 1813 NUE 11586 3876 60771 NUE 15640 2142 72026 NUE 8034 1378 112047 NUE 6173 1279 115577 NUE 15026 2269 120054 NUE 2955 1537 129850 NUE 6750 1657 137616 NUE 3728 1712 141433 NUE 7035 1115 143024 NUE 3053 1433 143683 NUE 9096 1858 150776 NUE 7722 2190 157824 NUE 3595 1078 243591 RAI 4525 1824 2925 DAIGOさんを除いてBBで初めて星1000に行ったステージ RAI 7166 2907 4667 SHH 24624 2493 695 SHH 10170 1257 812 SHH 8711 1023 821 SHH 6875 1291 949 SHH 6701 1349 4595 SHH 6108 1078 13708 UNI 10842 1875 184703 第一回キャラコンテスト受賞ステージ あはっ神 7341 2686 244471 第二回キャラコンテスト受賞ステージ ぎゃらくし 6532 1212 213910 定期的にステージを模様替えする ささみ 22959 3901 42609 ささみ 12181 1334 105856 すずむし 8997 1087 202062 ちくわ部 4425 1251 53233 ちくわ部 2637 1059 63517 ぷよん 3898 1000 16976 ぽよん 5430 1137 6899 ぽよん 3731 1323 46609 ぽよん 2695 1214 61506 ぽよん 11207 1273 90631 ぽよん 3412 1309 95151 ぽよん 13823 2279 100000 キリ番 ぽよん 3285 1055 101071 らすく 3884 1265 50290 カズアキ 8565 1188 151078 ギル 5087 2245 233404 第二回キャラコンテスト受賞ステージ ギル 10355 316 256265 タイキック 9444 1263 188121 ハク 4822 1087 2385 ハク 6001 2216 11327 ハク 4331 1683 20960 バッツ 6145 2095 181126 第一回キャラコンテスト受賞ステージ 受賞時の名前は五角竜王 ラガー 4195 1139 118372 ラガー 16798 1504 240427 ラガー 27613 2758 243182 第二回キャラコンテスト受賞ステージ ホモーン様 2234 1089 121255 齒學未来人 4417 2285 185532 第一回キャラコンテスト受賞ステージ _GALAXY_ 3180 1690 186312 第一回キャラコンテスト受賞ステージ _GALAXY_ 4895 2033 246545 第二回キャラコンテスト受賞ステージ 7232 2250 1
https://w.atwiki.jp/blockquestkiti/pages/94.html
なあ 工具合同ってどうなん???????? なんなん???????????? まあ買うけど???買うよ??? ブロックブラザーズ brockbros そこそこ楽しんでる しかし ステージいっぱい作る ブロック減ってくる ショップでブロック買う←今ここ ジェム減る ジェムが無い ブロック買えない ステージ作れない 引退
https://w.atwiki.jp/vocaloidchly/pages/2208.html
作詞:whoo 作曲:whoo 編曲:whoo 歌:初音ミク 如同駛過的電車一般 如同風搖動玻璃一般 時鐘的指針刻劃的聲響 在我耳裡縈繞不去 呵一口氣 踩扁菸蒂 渲染成紫的天空 落下雨滴 走過踏慣的枯草路前進 從以前就該明白的事 今天陽光很耀眼呢 季節又遞轉一圈 感覺被拋下的我 小跑步追趕你 我閉著雙眼聆聽你 踏過階梯而下的聲音 黑夜逐漸深沉 孤伶伶藏匿在狹小的黑夜陰影裡 背對著月光伸出的 左手 彷彿總有一日 能再搆到 天空的另一端 呵一口氣 風也靜止 宛如我們開始朝著 香菸的煙霧流動的方向奔逃 一直… 尋找的事物 已經都忘記了 雖然想化作語言 那卻得再花更多時間 即使如此 我們 似乎不得不活下去 時鐘的指針刻劃
https://w.atwiki.jp/c60steve/pages/2.html
メニュー Mine Blocks Dic.@wiki トップページ メニュー 検索 検索 and or 目次 編集議論・管理要望 情報・画像提供 チュートリアル!!!準備中!!! アイテム 生物・モンスター バイオーム・構造物 テクニック ゲーム用語 バグ・アップデート ブラウザ版をプレイ ダウンロードする コミュニティサイト 編集履歴 取得中です。 リンク ZanzLanz氏 ホームページ Mine Blocksを作った、ZanzLanz氏のページ。 Mine Blocks 公式wikiさん ZanzLanz氏運営の、公式wiki Mine Craft@wikiさん Mine Craftをもとにしたゲームなので、結構このページも役に立つ。 @wikiさん カウンター 合計: - 今日: - 昨日: - トップページの合計: - ここを編集
https://w.atwiki.jp/kowaliskai/pages/41.html
//ブロックのダメージ用//################操作ブロックダメージ用################ function Fall_block_damege(Bnum Number , Damege Number , Option Boolean = false, RimitOp Boolean = false) void{ if(Bnum 24 || Bnum 0) return; var to_sum Number = Fall_Pool.Next_Block[0].BlockSum;var T_FallPoBl BlockClass = Fall_Pool.Next_Pool[0][Bnum];if( !(T_FallPoBl.on_flag) ) return; if( T_FallPoBl.Metal_flg ) return;if( T_FallPoBl.Crystal_flg ) return; if(T_FallPoBl.Weight 100 Damege 1000){if( !(RimitOp) || (T_FallPoBl.HP - ((Damege)|0)) = (T_FallPoBl.MAXHP * (1 - Sys_Seting.FrictionFallParMax))){T_FallPoBl.HP -= ((Damege)|0);}}else{T_FallPoBl.HP -= ((Damege)|0);} if( !(Option) ) return; if(T_FallPoBl.HP 0){T_FallPoBl.fream_counter = 11 - ((T_FallPoBl.HP T_FallPoBl.MAXHP) ? (T_FallPoBl.HP/ T_FallPoBl.MAXHP * 10 )|0 10);//表示されるフレームを変更}else{T_FallPoBl.on_flag = false;//存在フラグ削除} } //################ブロックプールダメージ用################ function Main_block_damege( Bx Number , By Number , Damege Number, Option Boolean = false , RimitOp Boolean = false , BreakMode uint = 0) void{if(Bx 0 || Bx = Main_Pool.PoolMaxX){return;}if(By 0 || By = Main_Pool.PoolMaxY){return;} if(Main_Pool.LineFall temp_line_flg[By]){return;} var T_MainPool BlockClass = Main_Pool.BlockPool[Bx][By]; if( !(T_MainPool.on_flag) ) return;if( T_MainPool.Metal_flg (BreakMode = 0) ) return;if( T_MainPool.Crystal_flg (BreakMode = 1) ) return; if( !(RimitOp) || (T_MainPool.HP - Damege) (T_MainPool.MAXHP * (1 - Sys_Seting.FrictionMainParMax))){T_MainPool.HP -= Damege;} if( !(Option) ) return; if(T_MainPool.HP 0){T_MainPool.fream_counter = 11 - ((T_MainPool.HP T_MainPool.MAXHP) ? (T_MainPool.HP/ T_MainPool.MAXHP * 10)|0 10);//表示されるフレームを変更}else{T_MainPool.sys_number = 0;//システム上の連結属性をリセットT_MainPool.NextBreak_flg = false;//ライン巻き込みフラグ削除T_MainPool.on_flag = false;//存在フラグ削除 } } ・・・中略・・・ //################操作ブロック衝突処理用################ function BlockFallHit_fnc(Break_block Array) void{//落下ブロック衝突ダメージ処理var Damege Number = Fall_Pool.this_speed;var i uint = 0;var j uint = 0;var k uint = 0;var Temp_x Number = 0;var Temp_y Number = 0;var AvWeight Number = 0;var to_sum Number = Fall_Pool.Next_Block[0].BlockSum; var BrBcCount int = Break_block.length;//衝突したブロックの番号リストから長さを取得var fall_sum int = 0; for (i = 0; i 24; i++){ if( Fall_Pool.Next_Pool[0][i].on_flag ){ fall_sum++; } } for(i = 0 ; i to_sum ; i++ ){if(Fall_Pool.Next_Pool[0][i].on_flag ){AvWeight += Fall_Pool.Next_Pool[0][i].Weight;}}Damege = Damege * Math.abs(AvWeight) / BrBcCount; for(i = 0 ; i BrBcCount ; i++ ){//衝突したブロックを順に計算Fall_block_damege(Break_block[i] , Math.ceil(Damege / 1.5)); //操作ブロックダメージ加算Temp_x = Fall_Pool.this_x + Fall_Pool.Next_Block[0].B_x[ Break_block[i] ]; //衝突したブロックのX座標取得Temp_y = Fall_Pool.this_y + Fall_Pool.Next_Block[0].B_y[ Break_block[i] ]; //衝突したブロックのY座標取得for (j = 1; j Pool_y_delen; j++){ //ブロックプールの下底(Pool_y_delen)までブロックを検索。if( (j + Temp_y) Pool_y_delen){ //ブロックプールの下底(Pool_y_delen)に達した場合Main_block_damege( Temp_x , Temp_y + (j -1) , Math.ceil(Math.max(Damege - j,0) / 2));//ブロック溜まりダメージ加算Fall_block_damege(Break_block[i] , Math.ceil(Damege / Math.pow(2 , j) / 2));//操作ブロックダメージ加算break; } if( Main_Pool.BlockPool[Temp_x][Temp_y + j].on_flag){//ブロックの存在を確認Main_block_damege( Temp_x , Temp_y + j , Math.ceil(Math.max(Damege - j,0) / 2));//ブロック溜まりダメージ加算 }else{//ブロックの存在がない場合、別処理に移る。 for(k = 1; k = j + 3; k++ ){if( Temp_x - k 0){break;}else if( Main_Pool.BlockPool[Temp_x - k][Temp_y + j -1].on_flag ){Main_block_damege( Temp_x - k , Temp_y + j -1, Math.ceil(Math.max(Damege - j - k,0) / (j + k)));//ブロック溜まりダメージ加算}else{break;}}for(k = 1; k = j + 3; k++ ){if( Temp_x + k Pool_x_delen){break;}else if( Main_Pool.BlockPool[Temp_x + k][Temp_y + j -1].on_flag ){Main_block_damege( Temp_x + k , Temp_y + j -1, Math.ceil(Math.max(Damege - j - k,0) / (j + k)));//ブロック溜まりダメージ加算}else{break;}} break;}}}for(i = 0 ; i 24 ; i++ ){Fall_block_damege(i , (( Damege /10 )|0) , true);//操作ブロックダメージ適用処理} for(i = 0; i Pool_y_len ; i++){for(j = 0; j Pool_x_len; j++){Main_block_damege( j, i, 0, true);//ブロック溜まりダメージ適用処理}} Fall_Pool.StatusChen_flg = true;//操作ブロックの更新通知フラグMain_Pool.MainPoolRefresh = true;//ブロック溜まりの更新通知フラグ ScoreNum_fuc();//スコア計算呼び出し} //衝突した後にダメージ適用をすることで、同時に衝突したのと同じ効果を得る。//各更新フラグは、グラフィック更新に使われる。
https://w.atwiki.jp/fry-gon/pages/7.html
メニュー Mine Blocks Lab.トップページ メニュー このページについて 操作方法 モブ レシピ アイテムデータ カウンター 今日 - 人 昨日 - 人 合計 - 人 現在-人が閲覧中。
https://w.atwiki.jp/opengl/pages/172.html
OpenAL で .ogg を再生します。 #pragma comment ( lib, libogg_static.lib ) #pragma comment ( lib, libvorbis_static.lib ) #pragma comment ( lib, libvorbisfile_static.lib ) #pragma comment ( lib, OpenAL32.lib ) #include vorbis/vorbisfile.h #include windows.h #include al.h #include alc.h #include stdio.h #define NUM_BUFFERS 32 #define BUFFER_SIZE 4096 void main() { ALCdevice *device; ALCcontext *context; ALuint source, buffer; ALint state, num; device = alcOpenDevice(NULL); context = alcCreateContext(device, NULL); alcMakeContextCurrent(context); alGenSources(1, source); FILE *fp; fopen_s( fp, sample.ogg , rb ); OggVorbis_File vf; int current = 0; ov_open(fp, vf, NULL, 0); while(1) { char data[BUFFER_SIZE]; long size = ov_read( vf, data, sizeof(data), 0, 2, 1, current); vorbis_info *info = ov_info( vf, -1); ALenum format = info- channels == 1 ? AL_FORMAT_MONO16 AL_FORMAT_STEREO16; if (size = 0) { break; } alGetSourcei(source, AL_BUFFERS_QUEUED, num); if (num NUM_BUFFERS) { alGenBuffers(1, buffer); } else { alGetSourcei(source, AL_SOURCE_STATE, state); if (state != AL_PLAYING) { alSourcePlay(source); } while (alGetSourcei(source, AL_BUFFERS_PROCESSED, num), num == 0) { Sleep(100); } alSourceUnqueueBuffers(source, 1, buffer); } alBufferData(buffer, format, data, size, info- rate); alSourceQueueBuffers(source, 1, buffer); } ov_clear( vf); alGetSourcei(source, AL_SOURCE_STATE, state); if (state != AL_PLAYING) { alSourcePlay(source); } while (alGetSourcei(source, AL_SOURCE_STATE, state), state == AL_PLAYING) { Sleep(100); } while (alGetSourcei(source, AL_BUFFERS_PROCESSED, num), num 0) { alSourceUnqueueBuffers(source, 1, buffer); alDeleteBuffers(1, buffer); } alDeleteSources(1, source); alcMakeContextCurrent(NULL); alcDestroyContext(context); alcCloseDevice(device); return; }