📄 arm.cpp
字号:
if( ArmList.Select >= role[0].Propertiy.CurArmNum )
ArmList.Select=role[0].Propertiy.CurArmNum-1;
}
}
//显示
int shownum=(ArmList.ScrollBar.PageNum<role[0].Propertiy.CurArmNum)?ArmList.ScrollBar.PageNum:role[0].Propertiy.CurArmNum;
for(int i=0; i<shownum; i++)
{
n=ArmList.ScrollBar.CurNum+i;
if( n==ArmList.Select )
{
if( ArmList.ScrollBar.PageNum < ArmList.ScrollBar.MaxNum-ArmList.ScrollBar.MinNum )
Bar(surf, ArmList.x, ArmList.y+ArmList.LineHeight*i+2, ArmList.x+ArmList.Width-ArmList.ScrollBar.Width, ArmList.y+ArmList.LineHeight*(i+1)-2, ArmList.SelectColor);
else
Bar(surf, ArmList.x, ArmList.y+ArmList.LineHeight*i+2, ArmList.x+ArmList.Width-1, ArmList.y+ArmList.LineHeight*(i+1)-2, ArmList.SelectColor);
}
Blt(surf, ArmList.x, ArmList.y+ArmList.LineHeight*i, CMenu::Goods.GOODS[role[0].Propertiy.Arm[n]].Pic, GetRect(0, 0, CMenu::Goods.PicWidth, ArmList.LineHeight), true);
DWORD c=Font.GetColor();
Font.SetColor(0);
Font.PrintText(surf, ArmList.x+ArmList.Column[1].x+1, ArmList.y+4+ArmList.LineHeight*i+1, CMenu::Goods.GOODS[role[0].Propertiy.Arm[n]].Name);
Font.PrintText(surf, ArmList.x+ArmList.Column[3].x+1, ArmList.y+4+ArmList.LineHeight*i+1, "%2d", role[0].Propertiy.ArmNum[n]);
Font.SetColor(c);
Font.PrintText(surf, ArmList.x+ArmList.Column[1].x, ArmList.y+4+ArmList.LineHeight*i, CMenu::Goods.GOODS[role[0].Propertiy.Arm[n]].Name);
Font.PrintText(surf, ArmList.x+ArmList.Column[3].x, ArmList.y+4+ArmList.LineHeight*i, "%2d", role[0].Propertiy.ArmNum[n]);
}
//更换装备
if( mouse == LB_UP && point.x > ArmList.x && point.x < ArmList.x+ArmList.Width-ArmList.ScrollBar.Width && point.y > ArmList.y && point.y < ArmList.y+ArmList.LineHeight*role[0].Propertiy.CurArmNum )
{
int sel =(point.y-ArmList.y)/ArmList.LineHeight + ArmList.ScrollBar.CurNum; //使用装备
//if(sel!=-1)
{
CMenu::Sound_Click.Play(); //音效
int SelR=CMenu::RoleSel.SelectRole;
int arm=role[0].Propertiy.Arm[sel];
if( CMenu::Goods.GOODS[arm].Class == 0 ) //武器
{
int rolearm=role[SelR].Propertiy.Arms; //旧武器
if( rolearm != 0 )
role[0].AddArm(CMenu::Goods.GOODS[rolearm].Name);
role[0].DelArm(CMenu::Goods.GOODS[arm].Name);
role[SelR].Propertiy.Arms=arm;
//更新数值
role[SelR].UnSetupArm(rolearm);
role[SelR].SetupArm(arm);
}
else if( CMenu::Goods.GOODS[arm].Class == 1 ) //护具
{
int rolearm=role[SelR].Propertiy.Corselet; //旧护具
if( rolearm != 0 )
role[0].AddArm(CMenu::Goods.GOODS[rolearm].Name);
role[0].DelArm(CMenu::Goods.GOODS[arm].Name);
role[SelR].Propertiy.Corselet=arm;
//更新数值
role[SelR].UnSetupArm(rolearm);
role[SelR].SetupArm(arm);
}
Menu.ReInitMenu(); //更新屏幕
if(role[SelR].Propertiy.CurArmNum>0)
{
if(ArmList.Select>=role[SelR].Propertiy.CurArmNum)
ArmList.Select = role[SelR].Propertiy.CurArmNum-1;
}
else
ArmList.Select = -1;
}
}
if(A_UP)
{
int sel = ArmList.Select; //使用装备
if(sel!=-1)
{
CMenu::Sound_Click.Play(); //音效
int SelR=CMenu::RoleSel.SelectRole;
int arm=role[0].Propertiy.Arm[sel];
if( CMenu::Goods.GOODS[arm].Class == 0 ) //武器
{
int rolearm=role[SelR].Propertiy.Arms; //旧武器
if( rolearm != 0 )
role[0].AddArm(CMenu::Goods.GOODS[rolearm].Name);
role[0].DelArm(CMenu::Goods.GOODS[arm].Name);
role[SelR].Propertiy.Arms=arm;
//更新数值
role[SelR].UnSetupArm(rolearm);
role[SelR].SetupArm(arm);
}
else if( CMenu::Goods.GOODS[arm].Class == 1 ) //护具
{
int rolearm=role[SelR].Propertiy.Corselet; //旧护具
if( rolearm != 0 )
role[0].AddArm(CMenu::Goods.GOODS[rolearm].Name);
role[0].DelArm(CMenu::Goods.GOODS[arm].Name);
role[SelR].Propertiy.Corselet=arm;
//更新数值
role[SelR].UnSetupArm(rolearm);
role[SelR].SetupArm(arm);
}
Menu.ReInitMenu(); //更新屏幕
if(role[SelR].Propertiy.CurArmNum>0)
{
if(ArmList.Select>=role[SelR].Propertiy.CurArmNum)
ArmList.Select = role[SelR].Propertiy.CurArmNum-1;
}
else
ArmList.Select = -1;
}
}
//卸除装备
if( point.x > Window_Setup.dialogx+32 && point.x < Window_Setup.dialogx+Window_Setup.dialogw-32 )
{
if( point.y > Window_Setup.dialogy+32 && point.y < Window_Setup.dialogy+64 )
{
int SelR=CMenu::RoleSel.SelectRole;
ShowChangeNum(surf, 0, role[SelR].Propertiy.Arms);
Rectangle(surf, Window_Setup.dialogx+32, Window_Setup.dialogy+32, Window_Setup.dialogx+Window_Setup.dialogw-34, Window_Setup.dialogy+62, RGB16(0,255,255));
if( mouse == LB_UP )
{
CMenu::Sound_Click.Play(); //音效
int rolearm=role[SelR].Propertiy.Arms; //旧武器
if( rolearm != 0 )
role[0].AddArm(CMenu::Goods.GOODS[rolearm].Name);
role[SelR].Propertiy.Arms=0;
role[SelR].UnSetupArm(rolearm);
Menu.ReInitMenu(); //更新屏幕
}
}
else if( point.y > Window_Setup.dialogy+64 && point.y < Window_Setup.dialogy+Window_Setup.dialogh-32 )
{
int SelR=CMenu::RoleSel.SelectRole;
ShowChangeNum(surf, 0, role[SelR].Propertiy.Corselet);
Rectangle(surf, Window_Setup.dialogx+32, Window_Setup.dialogy+63, Window_Setup.dialogx+Window_Setup.dialogw-34, Window_Setup.dialogy+Window_Setup.dialogh-34, RGB16(0,255,255));
if( mouse == LB_UP )
{
CMenu::Sound_Click.Play(); //音效
int rolearm=role[SelR].Propertiy.Corselet; //旧护具
if( rolearm != 0 ) role[0].AddArm(CMenu::Goods.GOODS[rolearm].Name);
role[SelR].Propertiy.Corselet=0;
role[SelR].UnSetupArm(rolearm);
Menu.ReInitMenu(); //更新屏幕
}
}
}
//卸除装备
if( Key.KeyDown( DIK_A ) )
{
int SelR=CMenu::RoleSel.SelectRole;
ShowChangeNum(surf, 0, role[SelR].Propertiy.Arms);
Rectangle(surf, Window_Setup.dialogx+32, Window_Setup.dialogy+32, Window_Setup.dialogx+Window_Setup.dialogw-34, Window_Setup.dialogy+62, RGB16(0,255,255));
}
if( key == DIK_A + 128 || joystick == DIJ_L2 )
{
int SelR=CMenu::RoleSel.SelectRole;
CMenu::Sound_Click.Play(); //音效
int rolearm=role[SelR].Propertiy.Arms; //旧武器
if( rolearm != 0 ) role[0].AddArm(CMenu::Goods.GOODS[rolearm].Name);
role[SelR].Propertiy.Arms=0;
role[SelR].UnSetupArm(rolearm);
Menu.ReInitMenu(); //更新屏幕
if(point.x > ArmList.x && point.x < ArmList.x+ArmList.Width-ArmList.ScrollBar.Width && point.y > ArmList.y && point.y < ArmList.y+ArmList.LineHeight*role[0].Propertiy.CurArmNum)
ArmList.Select = (point.y-ArmList.y)/ArmList.LineHeight + ArmList.ScrollBar.CurNum;
else
ArmList.Select = 0;
}
if( Key.KeyDown( DIK_Z ) )
{
int SelR=CMenu::RoleSel.SelectRole;
ShowChangeNum(surf, 0, role[SelR].Propertiy.Corselet);
Rectangle(surf, Window_Setup.dialogx+32, Window_Setup.dialogy+63, Window_Setup.dialogx+Window_Setup.dialogw-34, Window_Setup.dialogy+Window_Setup.dialogh-34, RGB16(0,255,255));
}
if( key == DIK_Z + 128 || joystick == DIJ_L1 )
{
int SelR=CMenu::RoleSel.SelectRole;
CMenu::Sound_Click.Play(); //音效
int rolearm=role[SelR].Propertiy.Corselet; //旧护具
if( rolearm != 0 ) role[0].AddArm(CMenu::Goods.GOODS[rolearm].Name);
role[SelR].Propertiy.Corselet=0;
role[SelR].UnSetupArm(rolearm);
Menu.ReInitMenu(); //更新屏幕
if(point.x > ArmList.x && point.x < ArmList.x+ArmList.Width-ArmList.ScrollBar.Width && point.y > ArmList.y && point.y < ArmList.y+ArmList.LineHeight*role[0].Propertiy.CurArmNum)
ArmList.Select = (point.y-ArmList.y)/ArmList.LineHeight + ArmList.ScrollBar.CurNum;
else
ArmList.Select = 0;
}
//下一个
if( DOWN_DOWN && ArmList.Select < ArmList.ScrollBar.MaxNum-1 )
{
CMenu::Sound_Change.Play();
ArmList.Select++;
if( ArmList.Select >= ArmList.ScrollBar.CurNum + ArmList.ScrollBar.PageNum )
ArmList.ScrollBar.SetCurNum(ArmList.ScrollBar.CurNum+1);
}
//上一个
if( UP_DOWN && ArmList.Select > 0 )
{
CMenu::Sound_Change.Play();
ArmList.Select--;
if( ArmList.Select < ArmList.ScrollBar.CurNum )
ArmList.ScrollBar.SetCurNum(ArmList.ScrollBar.CurNum-1);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -