1
0

Implement BGGET

This commit is contained in:
otya128
2016-12-08 22:48:12 +09:00
parent b64120b480
commit aa6e2aeb42
2 changed files with 25 additions and 0 deletions

View File

@@ -7,6 +7,10 @@ import derelict.opengl3.gl;
struct BGChip struct BGChip
{ {
int i; int i;
int screenData()
{
return i;
}
} }
//912枚まで描画されるみたい //912枚まで描画されるみたい
//->899枚まで描画してその後は一番下のみ描画の様子 //->899枚まで描画してその後は一番下のみ描画の様子
@@ -23,6 +27,8 @@ class BG
int rendermax = 899; int rendermax = 899;
PetitComputer petitcom; PetitComputer petitcom;
bool show; bool show;
int chipWidth = 16;
int chipHeight = 16;
this(PetitComputer pc) this(PetitComputer pc)
{ {
chip[] = BGChip(0); chip[] = BGChip(0);
@@ -151,4 +157,15 @@ class BG
chip[i + y * width].i = id; chip[i + y * width].i = id;
}*/ }*/
} }
int get(int x, int y, int flag)
{
if (flag)
{
return chip[x / chipWidth + y / chipHeight * width].screenData;
}
else
{
return chip[x + y * width].screenData;
}
}
} }

View File

@@ -1615,6 +1615,14 @@ class BuiltinFunction
{ {
p.getBG(layer).show = false; p.getBG(layer).show = false;
} }
static int BGGET(PetitComputer p, int layer, int x, int y)
{
return BGGET(p, layer, x, y, 0);
}
static int BGGET(PetitComputer p, int layer, int x, int y, int flag)
{
return p.getBG(layer).get(x, y, flag);
}
static void EFCON() static void EFCON()
{ {
} }