示例#1
0
def enterCharacterNatureHead():
    '''
    用于确认角色性格的头部面板
    '''
    EraPrint.p('\n')
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '39'))
示例#2
0
def detailedSetting2Panel():
    EraPrint.p('\n')
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '11'))
    yrn = CmdButtonQueue.optionstr(CmdButtonQueue.detailedsetting2, 5,
                                   'center', True)
    return yrn
示例#3
0
def seeCharacterStatusPanel(characterId:str):
    '''
    查看角色状态面板
    Keyword arguments:
    characterId -- 角色Id
    '''
    statusTextData = TextLoading.getTextData(TextLoading.stageWordPath, '134')
    characterData = CacheContorl.characterData['character'][characterId]
    statusData = characterData.Status
    for stateType in statusData:
        EraPrint.sontitleprint(statusTextData[stateType])
        nowStatusData = statusData[stateType].copy()
        if stateType == 'SexFeel':
            if characterData.Sex == 'Man':
                del nowStatusData['VaginaDelight']
                del nowStatusData['ClitorisDelight']
                del nowStatusData['VaginaLubrication']
            elif characterData.Sex == 'Woman':
                del nowStatusData['PenisDelight']
            elif characterData.Sex == 'Asexual':
                del nowStatusData['VaginaDelight']
                del nowStatusData['ClitorisDelight']
                del nowStatusData['VaginaLubrication']
                del nowStatusData['PenisDelight']
        nowStatusTextList = [statusTextData[state] + ':' + str(nowStatusData[state]) for state in nowStatusData]
        size = 7
        if len(nowStatusTextList) < size:
            size = len(nowStatusTextList)
        EraPrint.plist(nowStatusTextList,size,'center')
    EraPrint.pl()
示例#4
0
def attributeGenerationBranchPanel():
    characterId = CacheContorl.characterData['characterId']
    AttrCalculation.setAttrDefault(characterId)
    PyCmd.clr_cmd()
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '9'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.currencymenu, 1)
    return yrn
示例#5
0
def inputSexPanel():
    characterId = CacheContorl.characterData['characterId']
    sexId = CacheContorl.characterData['character'][characterId]['Sex']
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '8')[sexId])
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.currencymenu, 1)
    EraPrint.p('\n')
    return yrn
示例#6
0
def inputNickNamePanel():
    characterId = CacheContorl.characterData['characterId']
    CacheContorl.characterData['character'][
        characterId] = CacheContorl.temporaryCharacter.copy()
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '6'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.inputnickname, 1)
    EraPrint.p('\n')
    return yrn
示例#7
0
def inputNamePanel() -> str:
    '''
    请求玩家输入姓名面板
    '''
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '4'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.currencymenu)
    EraPrint.p('\n')
    return yrn
示例#8
0
def seeCharacterNaturePanel(characterId:int):
    '''
    查看角色性格面板
    Keyword arguments:
    characterId -- 角色Id
    '''
    EraPrint.plt(TextLoading.getTextData(TextLoading.stageWordPath,'139'))
    EraPrint.pl(AttrText.getSeeAttrPanelHeadCharacterInfo(characterId))
    SeeNaturePanel.seeCharacterNaturePanel(characterId)
示例#9
0
def seeCharacterSocialContactPanel(characterId:int):
    '''
    查看角色社交面板
    Keyword arguments:
    characterId -- 角色Id
    '''
    EraPrint.plt(TextLoading.getTextData(TextLoading.stageWordPath,'145'))
    EraPrint.pl(AttrText.getSeeAttrPanelHeadCharacterInfo(characterId))
    SeeSocialContactPanel.seeCharacterSocialContactPanel(characterId)
示例#10
0
def seeCharacterStatusHeadPanel(characterId:str) -> str:
    '''
    查看角色状态面板头部面板
    Keyword arguments:
    characterId -- 角色Id
    '''
    EraPrint.plt(TextLoading.getTextData(TextLoading.stageWordPath, '135'))
    EraPrint.pl(AttrText.getSeeAttrPanelHeadCharacterInfo(characterId))
    seeCharacterStatusPanel(characterId)
示例#11
0
def seeCharacterWearItemPanel(characterId:int):
    '''
    查看角色穿戴道具面板
    Keyword arguments:
    characterId -- 角色Id
    '''
    EraPrint.plt(TextLoading.getTextData(TextLoading.stageWordPath, '40'))
    EraPrint.pl(AttrText.getSeeAttrPanelHeadCharacterInfo(characterId))
    WearItemPanel.seeCharacterWearItemPanel(characterId,False)
示例#12
0
def attributeGenerationBranchPanel() -> str:
    '''
    玩家确认进行详细设置面板
    '''
    PyCmd.clr_cmd()
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '9'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.currencymenu)
    return yrn
示例#13
0
def inputNickNamePanel() -> str:
    '''
    请求玩家输入昵称面板
    '''
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '6'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.inputnickname)
    EraPrint.p('\n')
    return yrn
示例#14
0
def detailedSetting8Panel() -> str:
    '''
    询问玩家肥胖程度面板
    '''
    EraPrint.p('\n')
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '29'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.detailedsetting8)
    return yrn
示例#15
0
def inputSexChoicePanel() -> str:
    '''
    玩家性别选择面板
    '''
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '7'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.sexmenu)
    EraPrint.p('\n')
    return yrn
示例#16
0
def inputSelfNamePanel() -> str:
    '''
    请求玩家输入自称面板
    '''
    PyCmd.clr_cmd()
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '14'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.inputselfname)
    EraPrint.p('\n')
    return yrn
示例#17
0
def inputNamePanel():
    characterId = CacheContorl.characterData['characterId']
    CacheContorl.characterData['character'][
        characterId] = CacheContorl.temporaryCharacter.copy()
    AttrCalculation.setDefaultCache()
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '4'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.currencymenu, 1)
    EraPrint.p('\n')
    return yrn
示例#18
0
def inputSelfNamePanel():
    characterId = CacheContorl.characterData['characterId']
    PyCmd.clr_cmd()
    CacheContorl.characterData['character'][
        characterId] = CacheContorl.temporaryCharacter.copy()
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '14'))
    yrn = CmdButtonQueue.optionint(CmdButtonQueue.inputselfname, 1)
    EraPrint.p('\n')
    return yrn
示例#19
0
def removeSave(saveId:str):
    '''
    删除存档id对应存档
    Keyword arguments:
    saveId -- 存档id
    '''
    savePath = getSaveDirPath(saveId)
    if os.path.isdir(savePath):
        shutil.rmtree(savePath)
    else:
        errorText = TextLoading.getTextData(TextLoading.errorPath,'notSaveError')
        EraPrint.pl(errorText)
示例#20
0
def waitInput(intA: int, intB: int) -> GameInit.askfor_str:
    '''
    等待玩家输入ab之间的一个数
    Keyword arguments:
    intA -- 输入边界A
    intB -- 输入边界B
    '''
    while (True):
        ans = GameInit.askfor_str()
        if ans.isdecimal():
            ans = int(ans)
            if intA <= ans <= intB:
                break
        EraPrint.pl(ans)
        EraPrint.pl(
            TextLoading.getTextData(TextLoading.errorPath, 'inputNullError') +
            '\n')
    return ans
示例#21
0
def seeCharacterSexExperiencePanel(characterId: int):
    '''
    查看角色性经验面板
    Keyword arguments:
    characterId -- 角色Id
    '''
    EraPrint.plittleline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.stageWordPath, '5'))
    characterData = CacheContorl.characterData['character'][characterId]
    characterSexGradeList = characterData.SexGrade
    characterSex = CacheContorl.characterData['character'][characterId].Sex
    characterSexGradeTextList = AttrText.getSexGradeTextList(
        characterSexGradeList, characterSex)
    EraPrint.plist(characterSexGradeTextList, 4, 'center')
    EraPrint.pl(TextLoading.getTextData(TextLoading.stageWordPath, '7'))
    characterEngraving = characterData.Engraving
    characterEngravingText = AttrText.getEngravingText(characterEngraving)
    EraPrint.plist(characterEngravingText, 3, 'center')
示例#22
0
def seeCharacterItemInfoPanel(characterId: str, itemId: str):
    '''
    用于查看角色道具信息的面板
    Keyword arguments:
    characterId -- 角色Id
    itemId -- 道具Id
    '''
    titleText = TextLoading.getTextData(TextLoading.stageWordPath, '38')
    EraPrint.plt(titleText)
    EraPrint.p(AttrText.getSeeAttrPanelHeadCharacterInfo(characterId))
    EraPrint.pline('.')
    itemData = CacheContorl.characterData['character'][characterId].Item[
        itemId]
    EraPrint.pl(
        TextLoading.getTextData(TextLoading.stageWordPath, 128) +
        itemData['ItemName'])
    EraPrint.pl(
        TextLoading.getTextData(TextLoading.stageWordPath, '131') +
        itemData['ItemInfo'])
示例#23
0
def changeSceneCharacterListPanel() -> list:
    '''
    当前场景角色列表页切换控制面板
    '''
    nameListMax = int(GameConfig.in_scene_see_player_max)
    nowPage = int(CacheContorl.panelState['SeeSceneCharacterListPanel'])
    scenePath = CacheContorl.characterData['character']['0']['Position']
    scenePathStr = MapHandle.getMapSystemPathStrForList(scenePath)
    sceneCharacterNameList = MapHandle.getSceneCharacterNameList(scenePathStr)
    characterMax = len(sceneCharacterNameList)
    pageMax = math.floor(characterMax / nameListMax)
    pageText = '(' + str(nowPage) + '/' + str(pageMax) + ')'
    inputS = CmdButtonQueue.optionint(CmdButtonQueue.changescenecharacterlist,
                                      cmdColumn=5,
                                      askfor=False,
                                      cmdSize='center')
    EraPrint.printPageLine(sample='-', string=pageText)
    EraPrint.pl()
    return inputS
示例#24
0
def seeCharacterItemPanel(characterId: int) -> list:
    '''
    查看角色背包道具列表面板
    Keyword arguments:
    characterId -- 角色Id
    '''
    EraPrint.p(AttrText.getSeeAttrPanelHeadCharacterInfo(characterId))
    EraPrint.pline('.')
    if characterId != '0':
        EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '37'))
        return []
    characterItemData = CacheContorl.characterData['character'][
        characterId].Item
    if len(characterItemData) == 0:
        EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '36'))
        return []
    nowPageId = int(CacheContorl.panelState['SeeCharacterItemListPanel'])
    nowPageMax = GameConfig.see_character_item_max
    nowPageStartId = nowPageId * nowPageMax
    nowPageEndId = nowPageStartId + nowPageMax
    if nowPageEndId > len(characterItemData.keys()):
        nowPageEndId = len(characterItemData.keys())
    inputS = []
    index = 0
    for i in range(nowPageStartId, nowPageEndId):
        itemId = list(characterItemData.keys())[i]
        itemData = characterItemData[itemId]
        itemText = itemData['ItemName'] + ' ' + TextLoading.getTextData(
            TextLoading.stageWordPath, '136') + str(itemData['ItemNum'])
        if characterId == '0':
            idInfo = CmdButtonQueue.idIndex(index)
            cmdText = idInfo + drawText
            PyCmd.pcmd(cmdText, index, None)
        else:
            EraPrint.p(drawText)
        index += 1
        inputS.append(str(index))
        EraPrint.p('\n')
    return inputS
示例#25
0
def gameMainPanel():
    EraPrint.pline()
    EraPrint.pl(TextHandle.align(GameConfig.game_name, 'center'))
    EraPrint.pl(TextHandle.align(GameConfig.author, 'right'))
    EraPrint.pl(TextHandle.align(GameConfig.verson, 'right'))
    EraPrint.pl(TextHandle.align(GameConfig.verson_time, 'right'))
    EraPrint.p('\n')
    EraPrint.pline()
    EraPrint.lcp(1 / 3, TextLoading.getTextData(TextLoading.messagePath, '2'))
    time.sleep(1)
    EraPrint.p('\n')
    EraPrint.pline()
    time.sleep(1)
    PyCmd.focusCmd()
    menuInt = CmdButtonQueue.optionint(CmdButtonQueue.logomenu)
    return menuInt
示例#26
0
def seeCharacterWearItemListPanel(characterId: int, itemType: str,
                                  maxPage: int) -> list:
    '''
    用于查看角色可穿戴道具列表的面板
    Keyword arguments:
    characterId -- 用户Id
    itemType -- 道具类型
    maxPage -- 道具列表最大页数
    '''
    EraPrint.pl()
    characterWearItemData = [
        item for item in CacheContorl.characterData['character']
        [characterId].WearItem['Item']
        if item in CacheContorl.wearItemTypeData[itemType]
    ]
    nowPageId = int(CacheContorl.panelState["SeeCharacterWearItemListPanel"])
    nowPageMax = GameConfig.see_character_wearitem_max
    nowPageStartId = nowPageId * nowPageMax
    nowPageEndId = nowPageStartId + nowPageMax
    if characterWearItemData == []:
        EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '38'))
        return []
    if nowPageEndId > len(characterWearItemData.keys()):
        nowPageEndId = len(characterWearItemData.keys())
示例#27
0
def startInputNamePanel():
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '3'))
    inputState = 0
    while inputState == 0:
        characterName = GameInit.askfor_str()
        EraPrint.pl(characterName)
        if TextHandle.getTextIndex(characterName) > 10:
            EraPrint.pl(
                TextLoading.getTextData(TextLoading.errorPath,
                                        'inputNameTooLongError'))
        else:
            inputState = 1
            CacheContorl.temporaryCharacter['Name'] = characterName
示例#28
0
def startInputNamePanel():
    '''
    玩家姓名输入处理面板
    '''
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '3'))
    while 1:
        characterName = GameInit.askfor_str()
        EraPrint.pl(characterName)
        if TextHandle.getTextIndex(characterName) > 10:
            EraPrint.pl(TextLoading.getTextData(TextLoading.errorPath, 'inputNameTooLongError'))
        else:
            CacheContorl.characterData['character'][0].Name = characterName
            break
示例#29
0
def startInputSelfName():
    '''
    玩家自称输入处理面板
    '''
    EraPrint.pline()
    EraPrint.pl(TextLoading.getTextData(TextLoading.messagePath, '15'))
    inputState = 0
    while inputState == 0:
        characterSelfName = GameInit.askfor_str()
        EraPrint.pl(characterSelfName)
        if TextHandle.getTextIndex(characterSelfName) > 10:
            EraPrint.pl(
                TextLoading.getTextData(TextLoading.errorPath,
                                        'inputSelfNameTooLongError'))
        else:
            inputState = 1
            CacheContorl.temporaryCharacter['SelfName'] = characterSelfName
    EraPrint.p('\n')
示例#30
0
def seeCharacterHPAndMPInSence(characterId:int):
    '''
    在场景中显示角色的HP和MP
    Keyword arguments:
    characterId -- 角色Id
    '''
    if characterId == 0:
        AttrPrint.printHpAndMpBar(characterId)
    else:
        characterIdText = TextLoading.getTextData(TextLoading.stageWordPath, '0') + '0' + ':' + CacheContorl.characterData['character'][0].Name
        targetIdText = TextLoading.getTextData(TextLoading.stageWordPath, '0') + f'{characterId}' + ':' + CacheContorl.characterData['character'][characterId].Name
        EraPrint.plist([characterIdText,targetIdText],2,'center')
        EraPrint.pl()
        playerBar = AttrPrint.getHpOrMpBar(0,'HitPoint',GameConfig.text_width / 2 - 4)
        targetBar = AttrPrint.getHpOrMpBar(characterId,'HitPoint',GameConfig.text_width / 2 - 4)
        EraPrint.plist([playerBar,targetBar],2,'center')
        EraPrint.pl()
        playerBar = AttrPrint.getHpOrMpBar(0,'ManaPoint',GameConfig.text_width / 2 - 4)
        targetBar = AttrPrint.getHpOrMpBar(characterId,'ManaPoint',GameConfig.text_width / 2 - 4)
        EraPrint.plist([playerBar,targetBar],2,'center')
        EraPrint.pl()