Files
gplan-2/game/presentation/views
DKChan 4b5e3f27e8 卡④T2(迭代47·营地场景图批): CampSceneView场景视图+camp_scene_layout.tres布局表+V14单测——场景视图/布局坐标/V14三面落地
- schema两件: CampSceneLayerSpec(层键+贴图矩形+命中矩形+命中键)+CampSceneLayoutTable(canvas/hud_band_h/gate_gap/wall_band/layers+validate()按面拆四查:身份贴图/命中边界/命中互斥/围墙带包络)
- 数据表camp_scene_layout.tres: 10层坐标唯一事实源(布局草案值+§5已裁:布告板(845,268,130,140)/门扇(520,250,240,220)门洞对齐/帐篷300x170;贴图矩形=contain终稿实测尺寸锚定:底中心/顶锚/底锚按物件语义,campfire命中(560,640,160,80)只取下半)
- ConfigDB接线: 表注册+表现域容器camp_scene_layout字段+装载期validate()逐问题_fatal(fail-fast红线:命中区越画面/相交/侵顶栏=数据致命)
- CampSceneView: setup_layers/bind_hotspots/get_hotspot_rect/set_feedback_state/set_hud_band五公开口+object_pressed信号; Control根+TextureRect层子节点序=z序(禁CanvasLayer/z_index/Sprite2D); 根单点_gui_input命中判定(层全IGNORE); 四态反馈:悬停=Candle轮廓+名牌(FS_HINT/INK_ON_DEEP/BG_ROOT板,画面内钳制)+Tween逐级整像素浮动/按下=位移1px/禁用=ShaderMaterial去饱和+降明度(零新素材,modulate只有明度轴); 素材缺位程序化占位冒烟安全; 命中键=七物件绑定(gate/forge/dummy/chest/notebook/board/campfire)
- V14单测camp_scene_layout_test.gd(11断言): 校验函数通过/七键集/两两不相交/不越画面不侵顶栏/篝火只下半/门扇对齐缺口/布告板挂墙带/10层序/ConfigDB装载链——全表关系谓词零坐标字面量; run_all manifest登记expect=0
- 验证: --editor --quit刷类缓存后V14孤跑绿(11项)+视图孤检绿(9项:子节点序/合成点击信号/悬停名牌/拖出取消/禁用不发/HUD槽——临时件不入库,T5探针承载正式验收); S9/S13归基线(gdstyle新违规4条已按职责轴拆函数清偿:validate按面四拆/_gui_input三拆/setup_layers构建段三拆/循环内分配提_build_layer_node)
2026-11-01 17:27:42 +08:00
..
补提交(布局几何单点化批·代码面+工具面+architecture行·跨会话遗留): battle_layout.tres 新表单行五字段(stage_h/info_panel_w/ap_bar_h/log_band_h_dig/log_band_h_settle)经 schema battle_layout_table.gd+域容器 config_domain_presentation.gd 收进 ConfigDb.presentation(ConfigDB 三容器→四容器,manifest 增 battle_layout 键,B区高度裁决 2026-10-30 用户裁=取代码标准 stage_h);views 五件构造签名增 layout 参(BattleStageView/HeroInfoPanelView/BoardZoneView/ApBarView/BattleLogView 常量高度改表值驱动)+ui_assembler 装配传 layout+probes 两件改址+main.gd 结算带注释去数值;tools/layout_config.py 新件+render_sample_sheet 两版读布局表现算(样张工具面);文档面: architecture.md ConfigDB 行换代(四容器成员 7/7/5/1、类变量 10)+HUD框架.md 三区表/装板不等式/调参表去数值化改指布局表+数据配置.md+interaction-patterns.md 明细带句去数值(battle.md 区表与待办清单登记面已随 1cdef6ba 在库);消费漏网 L1 就地补改九处(构造签名换型与 iter45 断点件收编的测试改址漏网,判据零变化): theme_projection_test:386/player_copy_sweep_test:44,98/adventure_feats_test:772/standee_fx_sweep_test:75/feat_vouchers_test:292 六处补 layout 实参,adventure_feats_test:791/level_shop_economy_test:1480/feat_vouchers_test:81 三处断点成员直读改经 a._bp_store(iter45卡②六成员搬移漏网,02 闸合回后首全量暴露);load_tables 超函数长键清偿(容器装配块抽 _assign_loaded 私有协函数——表行按域收进四容器+resolver 注入单一职责,与 _cross_validate 委托先例同型,S13 新增红修至基线口径内);窄验: 四件修复套件单跑全绿+gdstyle 基线外新违规 0
2026-10-31 05:05:08 +08:00
补提交(布局几何单点化批·代码面+工具面+architecture行·跨会话遗留): battle_layout.tres 新表单行五字段(stage_h/info_panel_w/ap_bar_h/log_band_h_dig/log_band_h_settle)经 schema battle_layout_table.gd+域容器 config_domain_presentation.gd 收进 ConfigDb.presentation(ConfigDB 三容器→四容器,manifest 增 battle_layout 键,B区高度裁决 2026-10-30 用户裁=取代码标准 stage_h);views 五件构造签名增 layout 参(BattleStageView/HeroInfoPanelView/BoardZoneView/ApBarView/BattleLogView 常量高度改表值驱动)+ui_assembler 装配传 layout+probes 两件改址+main.gd 结算带注释去数值;tools/layout_config.py 新件+render_sample_sheet 两版读布局表现算(样张工具面);文档面: architecture.md ConfigDB 行换代(四容器成员 7/7/5/1、类变量 10)+HUD框架.md 三区表/装板不等式/调参表去数值化改指布局表+数据配置.md+interaction-patterns.md 明细带句去数值(battle.md 区表与待办清单登记面已随 1cdef6ba 在库);消费漏网 L1 就地补改九处(构造签名换型与 iter45 断点件收编的测试改址漏网,判据零变化): theme_projection_test:386/player_copy_sweep_test:44,98/adventure_feats_test:772/standee_fx_sweep_test:75/feat_vouchers_test:292 六处补 layout 实参,adventure_feats_test:791/level_shop_economy_test:1480/feat_vouchers_test:81 三处断点成员直读改经 a._bp_store(iter45卡②六成员搬移漏网,02 闸合回后首全量暴露);load_tables 超函数长键清偿(容器装配块抽 _assign_loaded 私有协函数——表行按域收进四容器+resolver 注入单一职责,与 _cross_validate 委托先例同型,S13 新增红修至基线口径内);窄验: 四件修复套件单跑全绿+gdstyle 基线外新违规 0
2026-10-31 05:05:08 +08:00
补提交(布局几何单点化批·代码面+工具面+architecture行·跨会话遗留): battle_layout.tres 新表单行五字段(stage_h/info_panel_w/ap_bar_h/log_band_h_dig/log_band_h_settle)经 schema battle_layout_table.gd+域容器 config_domain_presentation.gd 收进 ConfigDb.presentation(ConfigDB 三容器→四容器,manifest 增 battle_layout 键,B区高度裁决 2026-10-30 用户裁=取代码标准 stage_h);views 五件构造签名增 layout 参(BattleStageView/HeroInfoPanelView/BoardZoneView/ApBarView/BattleLogView 常量高度改表值驱动)+ui_assembler 装配传 layout+probes 两件改址+main.gd 结算带注释去数值;tools/layout_config.py 新件+render_sample_sheet 两版读布局表现算(样张工具面);文档面: architecture.md ConfigDB 行换代(四容器成员 7/7/5/1、类变量 10)+HUD框架.md 三区表/装板不等式/调参表去数值化改指布局表+数据配置.md+interaction-patterns.md 明细带句去数值(battle.md 区表与待办清单登记面已随 1cdef6ba 在库);消费漏网 L1 就地补改九处(构造签名换型与 iter45 断点件收编的测试改址漏网,判据零变化): theme_projection_test:386/player_copy_sweep_test:44,98/adventure_feats_test:772/standee_fx_sweep_test:75/feat_vouchers_test:292 六处补 layout 实参,adventure_feats_test:791/level_shop_economy_test:1480/feat_vouchers_test:81 三处断点成员直读改经 a._bp_store(iter45卡②六成员搬移漏网,02 闸合回后首全量暴露);load_tables 超函数长键清偿(容器装配块抽 _assign_loaded 私有协函数——表行按域收进四容器+resolver 注入单一职责,与 _cross_validate 委托先例同型,S13 新增红修至基线口径内);窄验: 四件修复套件单跑全绿+gdstyle 基线外新违规 0
2026-10-31 05:05:08 +08:00
补提交(布局几何单点化批·代码面+工具面+architecture行·跨会话遗留): battle_layout.tres 新表单行五字段(stage_h/info_panel_w/ap_bar_h/log_band_h_dig/log_band_h_settle)经 schema battle_layout_table.gd+域容器 config_domain_presentation.gd 收进 ConfigDb.presentation(ConfigDB 三容器→四容器,manifest 增 battle_layout 键,B区高度裁决 2026-10-30 用户裁=取代码标准 stage_h);views 五件构造签名增 layout 参(BattleStageView/HeroInfoPanelView/BoardZoneView/ApBarView/BattleLogView 常量高度改表值驱动)+ui_assembler 装配传 layout+probes 两件改址+main.gd 结算带注释去数值;tools/layout_config.py 新件+render_sample_sheet 两版读布局表现算(样张工具面);文档面: architecture.md ConfigDB 行换代(四容器成员 7/7/5/1、类变量 10)+HUD框架.md 三区表/装板不等式/调参表去数值化改指布局表+数据配置.md+interaction-patterns.md 明细带句去数值(battle.md 区表与待办清单登记面已随 1cdef6ba 在库);消费漏网 L1 就地补改九处(构造签名换型与 iter45 断点件收编的测试改址漏网,判据零变化): theme_projection_test:386/player_copy_sweep_test:44,98/adventure_feats_test:772/standee_fx_sweep_test:75/feat_vouchers_test:292 六处补 layout 实参,adventure_feats_test:791/level_shop_economy_test:1480/feat_vouchers_test:81 三处断点成员直读改经 a._bp_store(iter45卡②六成员搬移漏网,02 闸合回后首全量暴露);load_tables 超函数长键清偿(容器装配块抽 _assign_loaded 私有协函数——表行按域收进四容器+resolver 注入单一职责,与 _cross_validate 委托先例同型,S13 新增红修至基线口径内);窄验: 四件修复套件单跑全绿+gdstyle 基线外新违规 0
2026-10-31 05:05:08 +08:00
2026-10-07 08:51:35 +08:00
feat(views): 未开格类型微光五组实装(迭代 30 卡①·Q1 丙案主路径)——色板与归组单点落 ui_kit(TG_GLOW_* 五组+GLOW_* 组号+glow_group_for_cell_type 九值封闭/glow_color_for_group;α170/带宽 cell÷8/软边 0.55/圆角 2 参数常量);shader 面新建 cell_type_glow.gdshader(canvas_item 距离场内缘带柔光:SDF 圆角掩码+mask_rect 豁免区,参数全经 ui_kit 注入守「呈现层裸 Color8=0」)+承载件 cell_type_glow_layer.gd;board_cell_unit 微光子件生命周期(有组才建、组变即换、无组即撤——作用集 ≤8 格常驻、零节点零绘制成本);board_view 作用集派生 _recompute_glow(= _diggable ∩ 身份可查 ∩ 灯光区 − r0,清单外 cell_type 显式登记禁静默空光)+开关 set_type_glow_enabled(Q4 丙案默认开、生产写入面组合根单点)+相位门控与接触带同源(set_dig_glow_enabled 尾链 _sync_glow_to_units 增量重绘)+取证面 type_glow_probe/cell_rect_probe。群伤组色值 = 冻结绯红 #FF2D55 的 V=0.65 档 #A61D37(2026-10-17 契约 5 停机呈报用户裁定「换更暗档」,色相零移动——初版 #FF1A31 ΔH 5.40° 已废);明度档 provisional 值按 Q2 甲案取、复核归样张批;五组 ΔH ≤0.13° 全数「只动明度不动色相」;生成口径 = 渲染合成空间(伽马)阶梯,相邻组模型 CR 1.245/1.234/1.239/1.270。静态无呼吸(Q5 甲案)。铁律:_glow 容器参数化 Dictionary[Vector2i, int](R1A 无类型容器红线);新文件头注 ≤8 行(S10)。
2026-10-17 10:18:14 +08:00
feat(views): 未开格类型微光五组实装(迭代 30 卡①·Q1 丙案主路径)——色板与归组单点落 ui_kit(TG_GLOW_* 五组+GLOW_* 组号+glow_group_for_cell_type 九值封闭/glow_color_for_group;α170/带宽 cell÷8/软边 0.55/圆角 2 参数常量);shader 面新建 cell_type_glow.gdshader(canvas_item 距离场内缘带柔光:SDF 圆角掩码+mask_rect 豁免区,参数全经 ui_kit 注入守「呈现层裸 Color8=0」)+承载件 cell_type_glow_layer.gd;board_cell_unit 微光子件生命周期(有组才建、组变即换、无组即撤——作用集 ≤8 格常驻、零节点零绘制成本);board_view 作用集派生 _recompute_glow(= _diggable ∩ 身份可查 ∩ 灯光区 − r0,清单外 cell_type 显式登记禁静默空光)+开关 set_type_glow_enabled(Q4 丙案默认开、生产写入面组合根单点)+相位门控与接触带同源(set_dig_glow_enabled 尾链 _sync_glow_to_units 增量重绘)+取证面 type_glow_probe/cell_rect_probe。群伤组色值 = 冻结绯红 #FF2D55 的 V=0.65 档 #A61D37(2026-10-17 契约 5 停机呈报用户裁定「换更暗档」,色相零移动——初版 #FF1A31 ΔH 5.40° 已废);明度档 provisional 值按 Q2 甲案取、复核归样张批;五组 ΔH ≤0.13° 全数「只动明度不动色相」;生成口径 = 渲染合成空间(伽马)阶梯,相邻组模型 CR 1.245/1.234/1.239/1.270。静态无呼吸(Q5 甲案)。铁律:_glow 容器参数化 Dictionary[Vector2i, int](R1A 无类型容器红线);新文件头注 ≤8 行(S10)。
2026-10-17 10:18:14 +08:00
feat(views): 未开格类型微光五组实装(迭代 30 卡①·Q1 丙案主路径)——色板与归组单点落 ui_kit(TG_GLOW_* 五组+GLOW_* 组号+glow_group_for_cell_type 九值封闭/glow_color_for_group;α170/带宽 cell÷8/软边 0.55/圆角 2 参数常量);shader 面新建 cell_type_glow.gdshader(canvas_item 距离场内缘带柔光:SDF 圆角掩码+mask_rect 豁免区,参数全经 ui_kit 注入守「呈现层裸 Color8=0」)+承载件 cell_type_glow_layer.gd;board_cell_unit 微光子件生命周期(有组才建、组变即换、无组即撤——作用集 ≤8 格常驻、零节点零绘制成本);board_view 作用集派生 _recompute_glow(= _diggable ∩ 身份可查 ∩ 灯光区 − r0,清单外 cell_type 显式登记禁静默空光)+开关 set_type_glow_enabled(Q4 丙案默认开、生产写入面组合根单点)+相位门控与接触带同源(set_dig_glow_enabled 尾链 _sync_glow_to_units 增量重绘)+取证面 type_glow_probe/cell_rect_probe。群伤组色值 = 冻结绯红 #FF2D55 的 V=0.65 档 #A61D37(2026-10-17 契约 5 停机呈报用户裁定「换更暗档」,色相零移动——初版 #FF1A31 ΔH 5.40° 已废);明度档 provisional 值按 Q2 甲案取、复核归样张批;五组 ΔH ≤0.13° 全数「只动明度不动色相」;生成口径 = 渲染合成空间(伽马)阶梯,相邻组模型 CR 1.245/1.234/1.239/1.270。静态无呼吸(Q5 甲案)。铁律:_glow 容器参数化 Dictionary[Vector2i, int](R1A 无类型容器红线);新文件头注 ≤8 行(S10)。
2026-10-17 10:18:14 +08:00
补提交(布局几何单点化批·代码面+工具面+architecture行·跨会话遗留): battle_layout.tres 新表单行五字段(stage_h/info_panel_w/ap_bar_h/log_band_h_dig/log_band_h_settle)经 schema battle_layout_table.gd+域容器 config_domain_presentation.gd 收进 ConfigDb.presentation(ConfigDB 三容器→四容器,manifest 增 battle_layout 键,B区高度裁决 2026-10-30 用户裁=取代码标准 stage_h);views 五件构造签名增 layout 参(BattleStageView/HeroInfoPanelView/BoardZoneView/ApBarView/BattleLogView 常量高度改表值驱动)+ui_assembler 装配传 layout+probes 两件改址+main.gd 结算带注释去数值;tools/layout_config.py 新件+render_sample_sheet 两版读布局表现算(样张工具面);文档面: architecture.md ConfigDB 行换代(四容器成员 7/7/5/1、类变量 10)+HUD框架.md 三区表/装板不等式/调参表去数值化改指布局表+数据配置.md+interaction-patterns.md 明细带句去数值(battle.md 区表与待办清单登记面已随 1cdef6ba 在库);消费漏网 L1 就地补改九处(构造签名换型与 iter45 断点件收编的测试改址漏网,判据零变化): theme_projection_test:386/player_copy_sweep_test:44,98/adventure_feats_test:772/standee_fx_sweep_test:75/feat_vouchers_test:292 六处补 layout 实参,adventure_feats_test:791/level_shop_economy_test:1480/feat_vouchers_test:81 三处断点成员直读改经 a._bp_store(iter45卡②六成员搬移漏网,02 闸合回后首全量暴露);load_tables 超函数长键清偿(容器装配块抽 _assign_loaded 私有协函数——表行按域收进四容器+resolver 注入单一职责,与 _cross_validate 委托先例同型,S13 新增红修至基线口径内);窄验: 四件修复套件单跑全绿+gdstyle 基线外新违规 0
2026-10-31 05:05:08 +08:00