📄 els_cpp.cpp
字号:
if(scrxy[dy+1][dx]==FULL||
scrxy[ay+1][ax]==FULL||
scrxy[cy+1][cx]==FULL)
stop();
break;
}
break;
case MODE5:
switch(fx)
{ case FX1:
if(scrxy[cy+1][cx]==FULL||
scrxy[dy+1][dx]==FULL)
stop();
break;
case FX2:
if(scrxy[dy+1][dx]==FULL||
scrxy[ay+1][ax]==FULL||
scrxy[cy+1][cx]==FULL)
stop();
break;
}
break;
case MODE6:
switch(fx)
{
case FX2:
if(scrxy[ay+1][ax]==FULL ||
scrxy[dy+1][dx]==FULL)
stop();
break;
case FX1:
if(scrxy[by+1][bx]==FULL ||
scrxy[cy+1][cx]==FULL ||
scrxy[dy+1][dx]==FULL)
stop();
break;
case FX4:
if(scrxy[ay+1][ax]==FULL||
scrxy[by+1][bx]==FULL)
stop();
break;
case FX3:
if(scrxy[ay+1][ax]==FULL||
scrxy[by+1][bx]==FULL||
scrxy[dy+1][dx]==FULL)
stop();
break;
}
break;
case MODE7:
if(scrxy[cy+1][cx]==FULL ||
scrxy[dy+1][dx]==FULL)
stop();
break;
}
}
void __fastcall TJm::cut(int fl) //TJm的削层函数
{
int i,j;
for(i=fl;i>=0;i--)
{
for(j=0;j<12;j++)
{
scrxy[i][j]=scrxy[i-1][j];
}
}
sc++;
}
void __fastcall TJm::stop() //TJm的停止函数
{
int i,j,k=0;
for(i=17;i>=0;i--)
{
k=0;
for(j=0;j<12;j++)
{
k=k+scrxy[i][j];
}
if(k==FULL*12)
{
cut(i);
i++;
}
}
/*int jj,kk=0;
for(jj=0;jj<12;jj++)
{
kk=kk+scrxy[1][jj];
}
if(kk>=FULL)
{
//els->game->Terminate();
//els->Start1->Enabled=true;
//els->Stop1->Enabled=false;
isstop=1;
//els->Label2->Caption="OVER";
}*/
els->PaintBox2->Canvas->Brush->Style=bsSolid;
els->PaintBox2->Canvas->Brush->Color=clBtnFace;
els->PaintBox2->Canvas->Pen->Style=psClear;
els->PaintBox2->Canvas->Lock();
els->PaintBox2->Canvas->Rectangle(1*24,1*24,1*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,2*24,1*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,3*24,1*24+24,3*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,4*24,1*24+24,4*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,1*24,2*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,2*24,2*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,3*24,2*24+24,3*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,4*24,2*24+24,4*24+24);
els->PaintBox2->Canvas->Rectangle(3*24,1*24,3*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(3*24,2*24,3*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(3*24,3*24,3*24+24,3*24+24);
els->PaintBox2->Canvas->Rectangle(3*24,4*24,3*24+24,4*24+24);
els->PaintBox2->Canvas->Unlock();
lb=next();
switch(lb)
{
case MODE1:
ax=4;ay=0;bx=5;by=0;cx=6;cy=0;dx=7;dy=0;
fx=FX1;
break;
case MODE2:
ax=5;ay=0;bx=6;by=0;cx=6;cy=1;dx=6;dy=2;
fx=FX1;
break;
case MODE3:
ax=5;ay=0;bx=6;by=0;cx=5;cy=1;dx=5;dy=2;
fx=FX1;
break;
case MODE4:
ax=5;ay=0;bx=5;by=1;cx=6;cy=1;dx=6;dy=2;
fx=FX1;
break;
case MODE5:
ax=6;ay=0;bx=5;by=1;cx=6;cy=1;dx=5;dy=2;
fx=FX1;
break;
case MODE6:
ax=6;ay=0;bx=5;by=1;cx=6;cy=1;dx=7;dy=1;
fx=FX1;
break;
case MODE7:
ax=5;ay=0;bx=6;by=0;cx=5;cy=1;dx=6;dy=1;
fx=FX1;
break;
}
scrxy[ay][ax]=FULL;
scrxy[by][bx]=FULL;
scrxy[cy][cx]=FULL;
scrxy[dy][dx]=FULL;
}
int __fastcall TJm::rand() //TJm的随机函数
{
randomize();
return random(MODE7+1);
}
//---------------------------------------------------------------------------
void __fastcall Tels::left()
{
//TODO: Add your source code here
//if(isstop==1)return;
scrxy[els->game->jm->ay][els->game->jm->ax]=EMPTY;
scrxy[els->game->jm->by][els->game->jm->bx]=EMPTY;
scrxy[els->game->jm->cy][els->game->jm->cx]=EMPTY;
scrxy[els->game->jm->dy][els->game->jm->dx]=EMPTY;
els->game->jm->ax=els->game->jm->ax-1;
els->game->jm->bx=els->game->jm->bx-1;
els->game->jm->cx=els->game->jm->cx-1;
els->game->jm->dx=els->game->jm->dx-1;
scrxy[els->game->jm->ay][els->game->jm->ax]=FULL;
scrxy[els->game->jm->by][els->game->jm->bx]=FULL;
scrxy[els->game->jm->cy][els->game->jm->cx]=FULL;
scrxy[els->game->jm->dy][els->game->jm->dx]=FULL;
els->game->scr->show();
}
void __fastcall Tels::right()
{
//TODO: Add your source code here
//if(isstop==1)return;
scrxy[els->game->jm->ay][els->game->jm->ax]=EMPTY;
scrxy[els->game->jm->by][els->game->jm->bx]=EMPTY;
scrxy[els->game->jm->cy][els->game->jm->cx]=EMPTY;
scrxy[els->game->jm->dy][els->game->jm->dx]=EMPTY;
els->game->jm->ax=els->game->jm->ax+1;
els->game->jm->bx=els->game->jm->bx+1;
els->game->jm->cx=els->game->jm->cx+1;
els->game->jm->dx=els->game->jm->dx+1;
scrxy[els->game->jm->ay][els->game->jm->ax]=FULL;
scrxy[els->game->jm->by][els->game->jm->bx]=FULL;
scrxy[els->game->jm->cy][els->game->jm->cx]=FULL;
scrxy[els->game->jm->dy][els->game->jm->dx]=FULL;
els->game->scr->show();
}
int __fastcall TJm::next()
{
//TODO: Add your source code here
neo=ne;
ne=rand();
els->PaintBox2->Canvas->Brush->Style=bsSolid;
els->PaintBox2->Canvas->Brush->Color=clBlue;
els->PaintBox2->Canvas->Pen->Style=psClear;
els->PaintBox2->Canvas->Lock();
switch(ne)
{
case MODE1:
els->PaintBox2->Canvas->Rectangle(1*24,1*24,1*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,2*24,1*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,3*24,1*24+24,3*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,4*24,1*24+24,4*24+24);
break;
case MODE2:
els->PaintBox2->Canvas->Rectangle(1*24,1*24,1*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,1*24,2*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,2*24,2*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,3*24,2*24+24,3*24+24);
break;
case MODE3:
els->PaintBox2->Canvas->Rectangle(1*24,1*24,1*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,1*24,2*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,2*24,1*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,3*24,1*24+24,3*24+24);
break;
case MODE4:
els->PaintBox2->Canvas->Rectangle(1*24,1*24,1*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,2*24,1*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,2*24,2*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,3*24,2*24+24,3*24+24);
break;
case MODE5:
els->PaintBox2->Canvas->Rectangle(2*24,1*24,2*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,2*24,1*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,2*24,2*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,3*24,1*24+24,3*24+24);
break;
case MODE6:
els->PaintBox2->Canvas->Rectangle(2*24,1*24,2*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,2*24,1*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,2*24,2*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(3*24,2*24,3*24+24,2*24+24);
break;
case MODE7:
els->PaintBox2->Canvas->Rectangle(1*24,1*24,1*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(1*24,2*24,1*24+24,2*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,1*24,2*24+24,1*24+24);
els->PaintBox2->Canvas->Rectangle(2*24,2*24,2*24+24,2*24+24);
break;
}
els->PaintBox2->Canvas->Unlock();
return neo;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -