diff --git a/assets/Scripts/Sub/UI/LoginUI.ts b/assets/Scripts/Sub/UI/LoginUI.ts index 11535c16..163532a2 100644 --- a/assets/Scripts/Sub/UI/LoginUI.ts +++ b/assets/Scripts/Sub/UI/LoginUI.ts @@ -8,11 +8,13 @@ import { LoginData } from "../../chat18x/data/LoginData"; import { PlayerData } from "../../chat18x/data/PlayerData"; import { AccountData } from "../../chat18x/data/AccountData"; import { WalletData } from "../../chat18x/data/WalletData"; +import { GlobalData } from "../../chat18x/data/GlobalData"; import { EnvData } from "../../chat18x/data/EnvData"; import DeviceIdService from "db://assets/Scripts/chat18x/foundation/identity/DeviceIdService"; import MachineInfoService from "db://assets/Scripts/chat18x/foundation/identity/MachineInfoService"; import { AuthService } from "db://assets/Scripts/chat18x/network/services/AuthService"; import { PlayerDataService } from "db://assets/Scripts/chat18x/network/services/PlayerDataService"; +import { CommonService } from "db://assets/Scripts/chat18x/network/services/CommonService"; import proto from "db://assets/Scripts/proto/proto.pb.js"; const { ccclass, property } = _decorator; @@ -66,9 +68,11 @@ export class LoginUI extends li_BaseView { this.loginFinish = true; this.reqMyInfo(); + this.reqGlobalData(); } } + // 请求个人数据 private async reqMyInfo() { const reqData = {}; let res = await PlayerDataService.I.reqMyInfo(reqData); @@ -81,6 +85,19 @@ export class LoginUI extends li_BaseView { } } + // 请求全局数据 + private async reqGlobalData() { + const reqData = { + resName: "TbGlobalConfig", + }; + let res = await CommonService.I.reqResConfig(reqData); + if (res && res.code === proto.cs.EnmRetCode.SUCCESS) { + // 保存数据 + const globalData = DataManager.I.getDataById(DataId.Global); + globalData.globals = res.data; + } + } + private enterGame() { ResManager.I.goMainScene(); } diff --git a/assets/Scripts/chat18x/config/GlobalConfig.ts b/assets/Scripts/chat18x/config/GlobalConfig.ts index 438ea684..42baeef3 100644 --- a/assets/Scripts/chat18x/config/GlobalConfig.ts +++ b/assets/Scripts/chat18x/config/GlobalConfig.ts @@ -39,7 +39,7 @@ export class GlobalConfig extends BaseConfig { return oneData.emotionApiKey; } - /** 获取情绪判断机器人api */ + /** 获取ai模型 */ public getModel(): string | null { let oneData = this.getAllConfig(); if (!oneData) return null; diff --git a/assets/Scripts/chat18x/data/GlobalData.ts b/assets/Scripts/chat18x/data/GlobalData.ts index e4c72da5..81fffb83 100644 --- a/assets/Scripts/chat18x/data/GlobalData.ts +++ b/assets/Scripts/chat18x/data/GlobalData.ts @@ -5,24 +5,155 @@ import { BaseData } from "./BaseData"; import proto from 'db://assets/Scripts/proto/proto.pb.js'; export class GlobalData extends BaseData { - + // api键 + private _apiKey: string = ""; + // 情绪判断机器人api + private _emotionApiKey: string = ""; + // ai模型 + private _model: string = ""; + // Temperature + private _temperature: number = 0; + // 单次聊天最大token + private _maxTokens: number = 0; + // 超时时间(微秒) + private _timeout: number = 0; + // 单个角色免费聊天次数 + private _freeChatTimes: number = 0; + // 单次对话增长好感度 + private _onceChatAddScore: number = 0; + // 好感度等级兑换比例 + private _scoreExchangeStarLevel: number = 0; + // 游戏名 + private _gameName: string = ""; + // 情绪评分机器人system_prompt,需拼接角色prompt + private _emotionRating: string = ""; + // ai机器人基础规则 + private _girlBasePrompt: string = ""; public reset(): void { - + this._apiKey = ""; + this._emotionApiKey = ""; + this._model = ""; + this._temperature = 0; + this._maxTokens = 0; + this._timeout = 0; + this._freeChatTimes = 0; + this._onceChatAddScore = 0; + this._scoreExchangeStarLevel = 0; + this._gameName = ""; + this._emotionRating = ""; + this._girlBasePrompt = ""; } public clear(): void { - + this._apiKey = ""; + this._emotionApiKey = ""; + this._model = ""; + this._temperature = 0; + this._maxTokens = 0; + this._timeout = 0; + this._freeChatTimes = 0; + this._onceChatAddScore = 0; + this._scoreExchangeStarLevel = 0; + this._gameName = ""; + this._emotionRating = ""; + this._girlBasePrompt = ""; } public destroy(): void { super.destroy(); + this._apiKey = null; + this._emotionApiKey = null; + this._model = null; + this._temperature = null; + this._maxTokens = null; + this._timeout = null; + this._freeChatTimes = null; + this._onceChatAddScore = null; + this._scoreExchangeStarLevel = null; + this._gameName = null; + this._emotionRating = null; + this._girlBasePrompt = null; } /** 设置全局数据 */ - public set globals(res: proto.cs.ICSGetResConfigRes) { - - - console.log("设置全局数据:"); + public set globals(data: proto.cs.ICSGetResConfigRes) { + const parsed = JSON.parse(data.data); + if (Array.isArray(parsed) && parsed.length > 0) { + const obj = parsed[0]; + this._apiKey = obj.ApiKey; + this._emotionApiKey = obj.emotionApiKey; + this._model = obj.Model; + this._temperature = obj.Temperature; + this._maxTokens = obj.MaxTokens; + this._timeout = obj.Timeout; + this._freeChatTimes = obj.FreeChatTimes; + this._onceChatAddScore = obj.OnceChatAddScore; + this._scoreExchangeStarLevel = obj.ScoreExchangeStarLevel; + this._gameName = obj.GameName; + this._emotionRating = obj.EmotionRating; + this._girlBasePrompt = obj.girlBasePrompt; + console.log("设置全局数据: ", this._gameName); + } } + + /** 获取api键 */ + public getApiKey(): string { + return this._apiKey; + } + + /** 获取情绪判断机器人api */ + public getEmotionApiKey(): string { + return this._emotionApiKey; + } + + /** 获取ai模型 */ + public getModel(): string { + return this._model; + } + + /** Temperature */ + public getTemperature(): number { + return this._temperature; + } + + /** 单次聊天最大token */ + public getMaxTokens(): number { + return this._maxTokens; + } + + /** 超时时间(微秒) */ + public getTimeout(): number { + return this._timeout; + } + + /** 单个角色免费聊天次数 */ + public getFreeChatTimes(): number { + return this._freeChatTimes; + } + + /** 单次对话增长好感度 */ + public getOnceChatAddScore(): number { + return this._onceChatAddScore; + } + + /** 好感度等级兑换比例 */ + public getScoreExchangeStarLevel(): number { + return this._scoreExchangeStarLevel; + } + + /** 游戏名 */ + public getGameName(): string { + return this._gameName; + } + + /** 情绪评分机器人system_prompt,需拼接角色prompt */ + public getEmotionRating(): string { + return this._emotionRating; + } + + /** ai机器人基础规则 */ + public getGirlBasePrompt(): string { + return this._girlBasePrompt; + } } diff --git a/assets/Scripts/chat18x/network/services/CommonService.ts b/assets/Scripts/chat18x/network/services/CommonService.ts index ee98091b..74a75df6 100644 --- a/assets/Scripts/chat18x/network/services/CommonService.ts +++ b/assets/Scripts/chat18x/network/services/CommonService.ts @@ -5,7 +5,7 @@ import { HttpCommonService } from "./HttpCommonService"; import { MockCommonService } from "./MockCommonService"; // 模拟开关 -const USE_MOCK = true; +const USE_MOCK = false; export class CommonService implements ICommonService { private static _I: CommonService | null = null; diff --git a/assets/Scripts/chat18x/ui/panels/ThemePanel.ts b/assets/Scripts/chat18x/ui/panels/ThemePanel.ts index ac68acb0..bc987175 100644 --- a/assets/Scripts/chat18x/ui/panels/ThemePanel.ts +++ b/assets/Scripts/chat18x/ui/panels/ThemePanel.ts @@ -25,7 +25,6 @@ import { ThemeData } from "../../data/ThemeData"; import { GirlData } from "../../data/GirlData"; import { WalletData } from "../../data/WalletData"; import { AccountData } from "../../data/AccountData"; - import { ShopData } from "../../data/ShopData"; import proto from "db://assets/Scripts/proto/proto.pb.js"; import GameRootUI from "../../../Main/Common/GameRootUI"; diff --git a/proto_cs b/proto_cs index 02474af6..5a82a609 160000 --- a/proto_cs +++ b/proto_cs @@ -1 +1 @@ -Subproject commit 02474af62a6831a909fa28fefa83afa382cc86ee +Subproject commit 5a82a609b0dc5778ebb7afe701d424ed1d97bd4a diff --git a/xchat_cfg b/xchat_cfg index cc6aa938..40338460 160000 --- a/xchat_cfg +++ b/xchat_cfg @@ -1 +1 @@ -Subproject commit cc6aa9382db0ee133926dbf5c18f2df682aa4dc7 +Subproject commit 4033846049030a80068ffa2ced898e8dad91c30c