コード例 #1
0
 static GameCommonInfo()
 {
     GameConfig            = new GameConfigBean();
     mGameConfigController = new GameConfigController(null, new GameConfigCallBack());
     mUITextController     = new UITextController(null, null);
     mGameConfigController.GetGameConfigData();
 }
コード例 #2
0
ファイル: WeatherForWindCpt.cs プロジェクト: wobushiren79/IL
    public override void OpenWeather(WeatherBean weatherData)
    {
        base.OpenWeather(weatherData);
        if (objWind_1)
        {
            objWind_1.SetActive(false);
        }
        if (objWind_2)
        {
            objWind_2.SetActive(false);
        }
        if (objDefoliation_1)
        {
            objDefoliation_1.SetActive(false);
        }
        switch (weatherData.weatherType)
        {
        case WeatherTypeEnum.Wind:
            SetWind();
            break;

        case WeatherTypeEnum.Defoliation:
            SetDefoliation();
            break;
        }
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        AudioHandler.Instance.PlayEnvironment(AudioEnvironmentEnum.Wind, gameConfig.environmentVolume);
    }
コード例 #3
0
    public override void OpenWeather(WeatherBean weatherData)
    {
        base.OpenWeather(weatherData);
        InitPS();
        if (objRain != null)
        {
            objRain.SetActive(true);
        }
        if (objThunder != null)
        {
            objThunder.SetActive(false);
        }
        switch (weatherData.weatherType)
        {
        case WeatherTypeEnum.LightRain:
            SetLightRain();
            break;

        case WeatherTypeEnum.Rain:
            SetRain();
            break;

        case WeatherTypeEnum.Thunderstorm:
            SetThunderstorm();
            break;
        }
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        AudioHandler.Instance.PlayEnvironment(AudioEnvironmentEnum.Rain, gameConfig.environmentVolume);
    }
コード例 #4
0
ファイル: GameLauncher.cs プロジェクト: wobushiren79/ThaumAge
 public override void Launch()
 {
     base.Launch();
     IconHandler.Instance.InitData();
     //打开主UI
     UIHandler.Instance.OpenUIAndCloseOther <UILoading>(UIEnum.Loading);
     //加载资源
     GameHandler.Instance.LoadGameResources(() =>
     {
         UserDataBean userData = GameDataHandler.Instance.manager.GetUserData();
         userData.userPosition.GetWorldPosition(out WorldTypeEnum worldType, out Vector3 worldPosition);
         //如果是测试数据
         if (userData.userId.Equals("Test"))
         {
             worldType = testWorldType;
         }
         testWorldType = worldType;
         //设置游戏状态
         GameHandler.Instance.manager.SetGameState(GameStateEnum.Init);
         //设置种子
         WorldCreateHandler.Instance.manager.SetWorldSeed(userData.seed);
         //开关角色控制
         GameControlHandler.Instance.SetPlayerControlEnabled(false);
         //设置世界类型
         WorldCreateHandler.Instance.SetWorldType(worldType);
         //设置远景模糊
         VolumeHandler.Instance.SetDepthOfField(worldType);
         //刷新周围区块
         GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();
         WorldCreateHandler.Instance.CreateChunkRangeForCenterPosition(Vector3Int.zero, gameConfig.worldRefreshRange, true, CompleteForUpdateChunk);
     });
 }
コード例 #5
0
    /// <summary>
    /// 根据ID获取文字内容
    /// </summary>
    /// <param name="id"></param>
    /// <returns></returns>
    public string GetTextById(long id)
    {
        if (dicText == null)
        {
            return(null);
        }
        if (dicText.TryGetValue(id, out UITextBean value))
        {
            GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();
            switch (gameConfig.GetLanguage())
            {
            case LanguageEnum.cn:
                return(value.content_cn);

            case LanguageEnum.en:
                return(value.content_en);
            }
            return(null);
        }
        else
        {
            LogUtil.LogError("没有找到ID为" + id + "的UI内容");
            return(null);
        }
    }
コード例 #6
0
    public UITextService()
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        mTableName     = "ui_text";
        mLeftTableName = "ui_text_details_" + gameConfig.language;
    }
コード例 #7
0
    public UITextService()
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        tableNameForMain = "text_ui";
        mLeftTableName   = "text_ui_details_" + gameConfig.language;
    }
コード例 #8
0
    /// <summary>
    /// 鼠标移动处理
    /// </summary>
    public virtual void HandleForMouseMove(out float moveX, out float moveY)
    {
        moveX = 0;
        moveY = 0;
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        if (gameConfig.statusForMouseMove == 0)
        {
            return;
        }

        Vector3 mousePosition = Input.mousePosition;

        if (mousePosition.x <= 25 && mousePosition.x >= 0)
        {
            moveX = -1f;
        }
        else if (mousePosition.x >= Screen.width - 25 && mousePosition.x <= Screen.width)
        {
            moveX = 1f;
        }

        if (mousePosition.y <= 25 && mousePosition.y >= 0)
        {
            moveY = -1f;
        }
        else if (mousePosition.y >= Screen.height - 25 && mousePosition.y <= Screen.height)
        {
            moveY = 1f;
        }
    }
コード例 #9
0
 /// <summary>
 /// 处理-世界刷新
 /// </summary>
 public void HandleForWorldUpdate(bool isCheckDis = true)
 {
     if (GameHandler.Instance.manager.GetGameState() == GameStateEnum.Gaming)
     {
         //获取玩家位置
         Vector3 playPosition = GameHandler.Instance.manager.player.transform.position;
         //不计算Y轴坐标
         playPosition.y = 0;
         //计算两点距离
         float dis = Vector3.Distance(playPosition, positionForWorldUpdate);
         //获取刷新距离
         GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();
         //如果不需要检测距离 就直接刷新
         if (!isCheckDis)
         {
             dis = float.MaxValue;
         }
         //对比距离 大于刷新距离则刷新
         if (dis > manager.widthChunk)
         {
             positionForWorldUpdate = playPosition;
             CreateChunkRangeForWorldPostion(playPosition, gameConfig.worldRefreshRange, null);
             DestroyChunkRangeForWorldPosition(playPosition, gameConfig.worldRefreshRange + gameConfig.worldDestoryRange, null);
         }
     }
 }
コード例 #10
0
    public override void Awake()
    {
        base.Awake();
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        ChangeUISize(gameConfig.uiSize);
    }
コード例 #11
0
    protected override void Awake()
    {
        base.Awake();
        //Screen.SetResolution(1280, 800, false);
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        SetData(gameConfig.statusForFrames, gameConfig.frames);
    }
コード例 #12
0
ファイル: AudioHandler.cs プロジェクト: wobushiren79/ThaumAge
    /// <summary>
    /// 初始化
    /// </summary>
    public void InitAudio()
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        audioSourceForMusic.volume       = gameConfig.musicVolume;
        audioSourceForSound.volume       = gameConfig.soundVolume;
        audioSourceForEnvironment.volume = gameConfig.environmentVolume;
    }
コード例 #13
0
ファイル: GameDataManager.cs プロジェクト: wobushiren79/IL
 /// <summary>
 /// 获取游戏设置
 /// </summary>
 /// <returns></returns>
 public GameConfigBean GetGameConfig()
 {
     if (gameConfig == null)
     {
         gameConfig = new GameConfigBean();
     }
     return(gameConfig);
 }
コード例 #14
0
 /// <summary>
 /// 保存配置数据
 /// </summary>
 /// <param name="configBean"></param>
 /// <returns></returns>
 public void SaveGameConfigData(GameConfigBean configBean)
 {
     if (configBean == null)
     {
         GetView().SetGameConfigFail();
         return;
     }
     GetModel().SetGameConfigData(configBean);
     GetView().SetGameConfigSuccess(configBean);
 }
コード例 #15
0
    /// <summary>
    /// 获取游戏配置数据
    /// </summary>
    /// <returns></returns>
    public GameConfigBean GetGameConfigData()
    {
        GameConfigBean configBean = mGameConfigService.QueryData();

        if (configBean == null)
        {
            configBean = new GameConfigBean();
        }
        return(configBean);
    }
コード例 #16
0
    public virtual void PlayClip()
    {
        if (clickClip.IsNull())
        {
            return;
        }
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();
        AudioClip      audioClip  = RandomUtil.GetRandomDataByList(clickClip);

        AudioSource.PlayClipAtPoint(audioClip, button.transform.position, gameConfig.soundVolume);
    }
コード例 #17
0
    /// <summary>
    /// 获取游戏配置数据
    /// </summary>
    /// <returns></returns>
    public GameConfigBean GetGameConfigData()
    {
        GameConfigBean configBean = GetModel().GetGameConfigData();

        if (configBean == null)
        {
            GetView().GetGameConfigFail();
            return(configBean);
        }
        GetView().GetGameConfigSuccess(configBean);
        return(configBean);
    }
コード例 #18
0
ファイル: LightHDBase.cs プロジェクト: wobushiren79/ThaumAge
 protected void Awake()
 {
     hdAdditionalLightData = GetComponent <HDAdditionalLightData>();
     if (hdAdditionalLightData != null)
     {
         GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();
         //设置阴影质量
         hdAdditionalLightData.SetShadowResolutionLevel(gameConfig.shadowResolutionLevel);
         //添加数据
         LightHandler.Instance.manager.AddHDLightData(hdAdditionalLightData);
     }
 }
コード例 #19
0
 /// <summary>
 /// 是否开启摄像头移动
 /// </summary>
 /// <param name="enabled"></param>
 public void EnabledCameraMove(bool enabled)
 {
     if (enabled)
     {
         GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();
         ChangeCameraSpeed(gameConfig.speedForPlayerCameraMoveX, gameConfig.speedForPlayerCameraMoveY);
     }
     else
     {
         ChangeCameraSpeed(0, 0);
     }
 }
コード例 #20
0
    /// <summary>
    /// 初始化角色
    /// </summary>
    public void InitCharacter()
    {
        GameDataBean gameData = GameDataHandler.Instance.manager.GetGameData();

        if (gameData.userCharacter != null && npcAI != null && npcAI as NpcAIUserCpt)
        {
            npcAI.SetCharacterData(gameData.userCharacter);
            audioForWalk.clip = AudioHandler.Instance.manager.GetSoundClip("sound_walk_1");
            GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();
            audioForWalk.volume = gameConfig.soundVolume * 0.5f;
        }
    }
コード例 #21
0
ファイル: KeyTipView.cs プロジェクト: wobushiren79/motorcycle
    private void OnEnable()
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        if (gameConfig.statusForKeyTip == 0)
        {
            cgKeyTip.alpha = 0;
        }
        else if (gameConfig.statusForKeyTip == 1)
        {
            cgKeyTip.alpha = 1;
        }
    }
コード例 #22
0
ファイル: BaseBean.cs プロジェクト: wobushiren79/ThaumAge
    /// <summary>
    /// 获取字段值
    /// </summary>
    /// <param name="fieldName"></param>
    /// <returns></returns>
    public string GetBaseText(string name)
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();
        string         fieldName  = $"{name}_{gameConfig.GetLanguage().GetEnumName()}";
        string         data       = (string)this.GetType().GetField(fieldName).GetValue(this);

        if (data == null)
        {
            fieldName = $"{name}_en";
            data      = (string)this.GetType().GetField(fieldName).GetValue(this);
        }
        return(data);
    }
コード例 #23
0
    /// <summary>
    /// 初始化数据
    /// </summary>
    public void InitData()
    {
        GameConfigBean gameConfig = manager.GetGameConfig();

        //设置全屏
        Screen.fullScreen = gameConfig.window == 1 ? true : false;
        //环境参数初始化
        VolumeHandler.Instance.InitData();
        //设置FPS
        FPSHandler.Instance.SetData(gameConfig.stateForFrames, gameConfig.frames);
        //修改抗锯齿
        CameraHandler.Instance.ChangeAntialiasing(gameConfig.GetAntialiasingMode(), gameConfig.antialiasingQualityLevel);
    }
コード例 #24
0
 /// <summary>
 /// 帧数修改
 /// </summary>
 /// <param name="value"></param>
 public void OnValueChangeForFrame(string value)
 {
     if (int.TryParse(value, out int result))
     {
         if (result < 30)
         {
             etFrames.text = "30";
             return;
         }
         GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();
         gameConfig.frames = result;
         FPSHandler.Instance.SetData(gameConfig.statusForFrames, gameConfig.frames);
     }
 }
コード例 #25
0
ファイル: TextInfoService.cs プロジェクト: wobushiren79/IL
    public List <TextInfoBean> QueryDataForFirstOrderByFavorability(long characterId, int favorability)
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        tableNameForMain = "text_talk";
        tableNameForLeft = "text_talk_details_" + gameConfig.language;
        string[] leftTable  = new string[] { tableNameForLeft };
        string[] mainKey    = new string[] { "id" };
        string[] leftKey    = new string[] { "text_id" };
        string[] colName    = new string[] { tableNameForMain + ".user_id", tableNameForMain + ".text_order", tableNameForMain + ".condition_min_favorability", tableNameForMain + ".condition_max_favorability" };
        string[] operations = new string[] { "=", "=", "<=", ">" };
        string[] colValue   = new string[] { characterId + "", "1", favorability + "", favorability + "" };
        return(SQLiteHandle.LoadTableData <TextInfoBean>(ProjectConfigInfo.DATA_BASE_INFO_NAME, tableNameForMain, leftTable, mainKey, leftKey, colName, operations, colValue));
    }
コード例 #26
0
ファイル: FPSHandler.cs プロジェクト: wobushiren79/ThaumAge
    void OnGUI()
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        if (gameConfig.framesShow)
        {
            timeFPSShow += Time.deltaTime;
            if (timeFPSShow >= 1)
            {
                FPSShow     = Mathf.FloorToInt(m_FPS);
                timeFPSShow = 0;
            }
            GUI.Label(new Rect(Screen.width - 100, 0, 100, 100), $"FPS: {FPSShow}");
        }
    }
コード例 #27
0
ファイル: NpcEventBuilder.cs プロジェクト: wobushiren79/IL
    /// <summary>
    /// 开始事件
    /// </summary>
    public void StartEvent()
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        if (gameConfig.statusForEvent == 0)
        {
            return;
        }
        int eventType = UnityEngine.Random.Range(0, 10);

        //先检测是否超过当天生成事件上限
        if (!GameCommonInfo.DailyLimitData.CheckEventNumber(1))
        {
            return;
        }
        switch (eventType)
        {
        case 0:
            BuildSundry();
            break;

        case 1:
            BuildRascal();
            break;

        case 2:
            BuildConvert();
            break;

        case 3:
            //TODO 待定 需要处理单个朋友和团队朋友重复出现的问题
            //BuildTownFriendsForTeam();
            break;

        case 4:
            break;

        case 5:
            break;

        default:
            BuildTownFriendsForOne();
            break;
        }
    }
コード例 #28
0
    public void OnProgressViewValueChange(ProgressView progressView, float value)
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        if (progressView == pvMusic)
        {
            gameConfig.musicVolume = value;
        }
        else if (progressView == pvSound)
        {
            gameConfig.soundVolume = value;
        }
        else if (progressView == pvEnvironment)
        {
            gameConfig.environmentVolume = value;
        }
        AudioHandler.Instance.InitAudio();
    }
コード例 #29
0
    public void OnDropDownValueChange(DropdownView view, int position, Dropdown.OptionData optionData)
    {
        AudioHandler.Instance.PlaySound(AudioSoundEnum.ButtonForNormal);
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        if (view == dvLanguage)
        {
            string languageStr = "cn";
            switch (optionData.text)
            {
            case "简体中文":
                languageStr = "cn";
                break;
            }
            GameDataHandler.Instance.manager.GetGameConfig().language = languageStr;
        }
        else if (view == dvWindow)
        {
            int windowType = 0;
            switch (optionData.text)
            {
            case "窗口":
                windowType        = 0;
                Screen.fullScreen = false;
                break;

            case "全屏":
                windowType = 1;
                //获取设置当前屏幕分辩率
                Resolution[] resolutions = Screen.resolutions;
                //设置当前分辨率
                Screen.SetResolution(resolutions[resolutions.Length - 1].width, resolutions[resolutions.Length - 1].height, true);
                Screen.fullScreen = true;
                break;
            }
            gameConfig.window = windowType;
        }
        else if (view == dvCheckOut)
        {
            gameConfig.statusForCheckOut = position;
        }
    }
コード例 #30
0
ファイル: TextInfoService.cs プロジェクト: wobushiren79/IL
    /// <summary>
    /// 初始化表名
    /// </summary>
    /// <param name="textEnum"></param>
    private void InitTableByTextType(TextEnum textEnum)
    {
        GameConfigBean gameConfig = GameDataHandler.Instance.manager.GetGameConfig();

        switch (textEnum)
        {
        case TextEnum.Look:
            tableNameForMain = "text_look";
            tableNameForLeft = "text_look_details_" + gameConfig.language;
            break;

        case TextEnum.Talk:
            tableNameForMain = "text_talk";
            tableNameForLeft = "text_talk_details_" + gameConfig.language;
            break;

        case TextEnum.Story:
            tableNameForMain = "text_story";
            tableNameForLeft = "text_story_details_" + gameConfig.language;
            break;
        }
    }