传奇广告查询第一站 同步54.com

【传奇服务器爱好者】-IGE引擎M2笔记-传奇窗口化
原创 于2026-01-05 18:07:00发布
12 阅读
0
0

文章目录

传奇窗口化

  1. 去掉 DX全屏占用模式

procedure TfrmMain.FormCreate(Sender: TObject); 里的

 if g_boFullScreen then DXDraw.Options:=DXDraw.Options + [doFullScreen]; //注释掉 

这样改后会颜色丢失 只要加个 g_boUseDIBSurface := TRUE; 就可以不让颜色丢失!!

2.为什么图片只在屏幕的0,0显示 。

因为 DxDraw.Primary.Draw (0, 0, DxDraw.Surface.ClientRect, DxDraw.Surface, FALSE); 这条函数引起的。

只要把这条函数改 成 DXDraw.Flip 就OK了

procedure TMainForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
{如果按了Esc,则退出}
if Key=VK_ESCAPE then
Close;

{全屏模式和窗口模式的切换}
if (ssAlt in Shift) and (Key=VK_RETURN) then
begin
DXDraw.Finalize;

if doFullScreen in DXDraw.Options then begin RestoreWindow; DXDraw.Cursor := crNone; BorderStyle := bsSizeable; DXDraw.Options := DXDraw.Options - [doFullScreen]; end else begin StoreWindow; DXDraw.Cursor := crNone; BorderStyle := bsNone; DXDraw.Options := DXDraw.Options + [doFullScreen]; end; DXDraw.Initialize; 

end;
end;

//WNpcImg.Initialize;
WEffectImg.Initialize;
//ImageList.Items.MakeColorTable;

// DXDraw.ColorTable := ImageList.Items.ColorTable;
DXDraw.DefColorTable := g_WMainImages.MainPalette;
//DXDraw.DefColorTable := ImageList.Items.ColorTable;
DXDraw.ColorTable := DXDraw.DefColorTable;
// DXDraw.UpdatePalette;
DXDraw.UpdatePalette;

//MainSurface := TDirectDrawSurface.Create (frmMain.DxDraw.DDraw);
//MainSurface.SystemMemory := TRUE;
//MainSurface.SetSize (SCREENWIDTH, SCREENHEIGHT);

BackSprite:=TBackgroundSprite.Create(DXSpriteEngine.Engine);
with TBackgroundSprite(BackSprite) do

管理员
0
0
0
分享
上一篇: 蓝月传奇怎么显示无服务器,关于此次蓝月传奇突然关闭的说明!
下一篇: DBC2000架设传奇教程“零基础”
评论
历史记录
回顶部
浏览时间 游戏名称 游戏IP 开区网址
注册GM1论坛账号
  • 上传头像
注册

已有账号,

微信扫码登录
重置密码
重置密码

注册

绑定关联手机号
关联手机号