找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2935|回复: 9

避免重复劳动 丢一段DTA客户端设置关联phobos的代码上来

[复制链接]
发表于 2024-5-18 01:15:18 | 显示全部楼层 |阅读模式
本帖最后由 ruanhuhu 于 2024-5-18 14:16 编辑




顺便说一下 加在这些按钮下的ToolTip=也是可以生效的


以下是全部的代码了仅是为了避免重复造轮子

不会用也不要问我
{:12_545:}



使以下这一段工作
[Phobos]
CampaignDefaultGameSpeed=4       ; integer
ShowBriefing=true                ; boolean
DigitalDisplay.Enable=false      ; boolean
ShowDesignatorRange=false        ; boolean
PrioritySelectionFiltering=true  ; boolean
ShowPlacementPreview=yes         ; boolean
RealTimeTimers=false             ; boolean
RealTimeTimers.Adaptive=false    ; boolean
ShowHarvesterCounter=true        ; boolean
ShowPowerDelta=true              ; boolean  
ShowWeedsCounter=true            ; boolean
ToolTipDescriptions=true         ; boolean
ToolTipBlur=false                ; boolean
SaveGameOnScenarioStart=true     ; boolean

dta源码中添加
UserINISettings.cs中把[phohos]加上

public const string PHOBOS = "Phobos";

CampaignDefaultGameSpeed = new IntSetting(iniFile, PHOBOS, "CampaignDefaultGameSpeed", 4);

ShowBriefing = new BoolSetting(iniFile, PHOBOS, "ShowBriefing", true);
DigitalDisplay_Enable = new BoolSetting(iniFile, PHOBOS, "DigitalDisplay.Enable", false);
ShowDesignatorRange = new BoolSetting(iniFile, PHOBOS, "ShowDesignatorRange", false);
PrioritySelectionFiltering = new BoolSetting(iniFile, PHOBOS, "PrioritySelectionFiltering", true);
ShowPlacementPreview = new BoolSetting(iniFile, PHOBOS, "ShowPlacementPreview", true);
RealTimeTimers = new BoolSetting(iniFile, PHOBOS, "RealTimeTimers", false);
RealTimeTimers_Adaptive = new BoolSetting(iniFile, PHOBOS, "RealTimeTimers.Adaptive", false);
ShowHarvesterCounter = new BoolSetting(iniFile, PHOBOS, "ShowHarvesterCounter", true);
ShowPowerDelta = new BoolSetting(iniFile, PHOBOS, "ShowPowerDelta", true);
ShowWeedsCounter = new BoolSetting(iniFile, PHOBOS, "ShowWeedsCounter", true);
ToolTipDescriptions = new BoolSetting(iniFile, PHOBOS, "ToolTipDescriptions", true);
ToolTipBlur = new BoolSetting(iniFile, PHOBOS, "ToolTipBlur", false);
SaveGameOnScenarioStart = new BoolSetting(iniFile, PHOBOS, "SaveGameOnScenarioStart", true);

public IntSetting CampaignDefaultGameSpeed { get; set; }// = 4; integer
public BoolSetting ShowBriefing { get; set; }// = true; boolean
public BoolSetting DigitalDisplay_Enable { get; set; }// = false; boolean
public BoolSetting ShowDesignatorRange { get; set; }// = false; boolean
public BoolSetting PrioritySelectionFiltering { get; set; }// = true; boolean
public BoolSetting ShowPlacementPreview { get; set; }// = yes; boolean
public BoolSetting RealTimeTimers { get; set; }// = false; boolean
public BoolSetting RealTimeTimers_Adaptive { get; set; }// = false; boolean
public BoolSetting ShowHarvesterCounter { get; set; }// = true; boolean
public BoolSetting ShowPowerDelta { get; set; }// = true; boolean
public BoolSetting ShowWeedsCounter { get; set; }// = true; boolean
public BoolSetting ToolTipDescriptions { get; set; }// = true; boolean
public BoolSetting ToolTipBlur { get; set; }// = false; boolean
public BoolSetting SaveGameOnScenarioStart { get; set; }// = true; boolean
//以上


GameOptionsPanel.cs 中的

private XNAClientCheckBox chkRealTimeTimers;

private XNAClientCheckBox chkShowPlacementPreview;
private XNAClientCheckBox chkToolTipBlur;
private XNAClientCheckBox chkDigitalDisplay;
private XNAClientCheckBox chk1;
private XNAClientCheckBox chk2;
private XNAClientCheckBox chk3;
private XNAClientCheckBox chk4;
//private XNAClientCheckBox chk5; 这个是调任务速度的 我放在任务界面里 此处不需要
private XNAClientCheckBox chk6;
private XNAClientCheckBox chk7;
private XNAClientCheckBox chk8;
private XNAClientCheckBox chk9;
private XNAClientCheckBox chk10;

//超武真实计时
chkRealTimeTimers = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "RealTimeTimers");
chkRealTimeTimers.Name = "chkRealTimeTimers";
chkRealTimeTimers.Text = "RealTimeTimers".L10N("Client:DTAConfig:RealTimeTimers");
//建筑放置预览
chkShowPlacementPreview = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "ShowPlacementPreview");
chkShowPlacementPreview.Name = "chkShowPlacementPreview";
chkShowPlacementPreview.Text = "ShowPlacementPreview".L10N("Client:DTAConfig:ShowPlacementPreview");
//模糊工具提示
chkToolTipBlur = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "ToolTipBlur");
chkToolTipBlur.Name = "chkToolTipBlur";
chkToolTipBlur.Text = "ToolTipBlur".L10N("Client:DTAConfig:ToolTipBlur");
//显示血量值
chkDigitalDisplay = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "DigitalDisplay.Enable");
chkDigitalDisplay.Name = "chkDigitalDisplay";
chkDigitalDisplay.Text = "DigitalDisplay.Enable".L10N("Client:DTAConfig:DigitalDisplay.Enable");
//太多了 直接以chk1 - 10替代了
//启动时显示简报对话框
chk1 = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "ShowBriefing");
chk1.Name = "chk1";
//详细ToolTip
chk2 = new SettingCheckBox(WindowManager, false, UserINISettings.PHOBOS, "ToolTipDescriptions");
chk2.Name = "chk2";
//指示、抑制范围
chk3 = new SettingCheckBox(WindowManager, false, UserINISettings.PHOBOS, "ShowDesignatorRange");
chk3.Name = "chk3";
//框选的优先级低
chk4 = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "PrioritySelectionFiltering");
chk4.Name = "chk4";
//没用 是任务速度 不在这里
//chk5 = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "");
//任务自动存档
chk6 = new SettingCheckBox(WindowManager, false, UserINISettings.PHOBOS, "SaveGameOnScenarioStart");
chk6.Name = "chk6";
//真实计时
chk7 = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "RealTimeTimers.Adaptive");
chk7.Name = "chk7";
//矿车计数
chk8 = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "ShowHarvesterCounter");
chk8.Name = "chk8";
//功率增量计数器
chk9 = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "ShowPowerDelta");
chk9.Name = "chk9";
//收割计数器
chk10 = new SettingCheckBox(WindowManager, true, UserINISettings.PHOBOS, "ShowWeedsCounter");
chk10.Name = "chk10";

控件位置和尺寸没有 我直接写在ini文件里


//增加的phobos
AddChild(chkRealTimeTimers);
AddChild(chkShowPlacementPreview);
AddChild(chkToolTipBlur);
AddChild(chkDigitalDisplay);
AddChild(chk1);
AddChild(chk2);
AddChild(chk3);
AddChild(chk4);
////AddChild(chk5);
AddChild(chk6);
AddChild(chk7);
AddChild(chk8);
AddChild(chk9);
AddChild(chk10);

效果就这样 有的没放 就自动以默认值为准了


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2024-5-18 20:30:41 来自手机 | 显示全部楼层
ruanhuhu 发表于 2024-5-18 12:01
全白干

已经允许新增的控件修改ra2md.ini文件的内容了吗?

可以看下说明书,挺详细的

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2024-5-18 01:26:01 | 显示全部楼层
重新编辑了一下 禁用了表情 之前有些符号自动变成笑脸了

希望没有少内容
回复

使用道具 举报

发表于 2024-5-18 11:41:18 | 显示全部楼层
就算少了什么内容,也应该学会自己排错,都做dta了,这点基础也得有。
回复

使用道具 举报

发表于 2024-5-18 11:57:34 来自手机 | 显示全部楼层
支持一下,新版源码已经支持在ini里直接定义控件啦
回复

使用道具 举报

 楼主| 发表于 2024-5-18 12:00:21 | 显示全部楼层
双杀步枪 发表于 2024-5-18 11:41
就算少了什么内容,也应该学会自己排错,都做dta了,这点基础也得有。

有道理 那就不管这个 我大概看了下没问题
回复

使用道具 举报

 楼主| 发表于 2024-5-18 12:01:32 | 显示全部楼层
只爱你欺负☞ 发表于 2024-5-18 11:57
支持一下,新版源码已经支持在ini里直接定义控件啦

全白干

已经允许新增的控件修改ra2md.ini文件的内容了吗?
回复

使用道具 举报

发表于 2024-5-18 12:38:58 | 显示全部楼层
好哇,你做得好哇
回复

使用道具 举报

 楼主| 发表于 2024-5-18 12:40:46 | 显示全部楼层
Happysheep 发表于 2024-5-18 12:38
好哇,你做得好哇

搞了蛮久 都是重复的工作 想着发上来万一大家用到的
回复

使用道具 举报

 楼主| 发表于 2024-5-18 20:50:30 | 显示全部楼层
只爱你欺负☞ 发表于 2024-5-18 20:30
可以看下说明书,挺详细的

看到了 确实先进
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|Archiver|手机版|管理员邮箱|红警DIY论坛 |网站地图

GMT+8, 2026-8-27 17:52 , Processed in 0.057829 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表