mirror of
https://github.com/yawaflua/Informatis.git
synced 2025-12-10 12:09:27 +02:00
improved SettingS.java
This commit is contained in:
@@ -22,21 +22,39 @@ shar-stat.powerIn = Power Income: {0}/s
|
|||||||
shar-stat.powerOut = Power Outcome: {0}/s
|
shar-stat.powerOut = Power Outcome: {0}/s
|
||||||
|
|
||||||
#Settings
|
#Settings
|
||||||
setting.unitlinelimit.name = UnitLines limit
|
setting.infoui.name = Display Info UI
|
||||||
setting.unitlinelimit.description = lots of drawing unitlines drop fps. you need to set lines limit with your device environment.
|
setting.infoui.description =
|
||||||
|
setting.weaponui.name = Display Weapon Info UI
|
||||||
setting.wavesetting.name = Wave UI Setting
|
setting.weaponui.description =
|
||||||
setting.opacitysetting.name = Opacity Setting
|
setting.wavemax.name = Wave Amount to Display
|
||||||
|
setting.wavemax.description = set displayed wave amount of wave info.
|
||||||
setting.infoUiScale.name = Info UI Scaling
|
|
||||||
setting.infoUiScale.description = set scale for info ui on left-side.
|
|
||||||
setting.coreItemCheckRate.name = Item tap: update rate
|
|
||||||
setting.pastwave.name = Display Previous Wave
|
setting.pastwave.name = Display Previous Wave
|
||||||
setting.pastwave.description = toggle to shows previous wave on wave info ingame.\nCurrent wave is highlighted with red.
|
setting.pastwave.description = toggle to shows previous wave on wave info ingame.\nCurrent wave is highlighted with red.
|
||||||
setting.emptywave.name = Display Empty Wave
|
setting.emptywave.name = Display Empty Wave
|
||||||
setting.emptywave.description = toggle to shows empty wave on wave info ingame.
|
setting.emptywave.description = toggle to shows empty wave on wave info ingame.
|
||||||
setting.wavemax.name = Wave Amount to Display
|
setting.barstyle.name = Change Bar Style
|
||||||
setting.wavemax.description = set displayed wave amount of wave info.\nSelect the pencil and enter a number.
|
setting.barstyle.description =
|
||||||
|
setting.infoUiScale.name = Info UI Scaling
|
||||||
|
setting.infoUiScale.description = set scale for info ui on left-side.
|
||||||
|
setting.coreItemCheckRate.name = Item tap: update rate
|
||||||
|
setting.coreItemCheckRate.description =
|
||||||
|
setting.allTeam.name = Display all teams' info on item tap
|
||||||
|
setting.allTeam.description =
|
||||||
|
|
||||||
|
setting.rangeRadius.name = Near Range Margin
|
||||||
|
setting.rangeRadius.description = set additional distances to show range.
|
||||||
|
setting.rangeNearby.name = Display Near Range
|
||||||
|
setting.rangeNearby.description = toggle to display range circle when you approached enemy ranges.
|
||||||
|
setting.allTeamRange.name = Display Player Team Range
|
||||||
|
setting.allTeamRange.description = toggle to display player team's range.
|
||||||
|
setting.allTargetRange.name = Display All Target Range
|
||||||
|
setting.allTargetRange.description = toggle to display all range whatever airTarget or groundTarget etc.
|
||||||
|
setting.coreRange.name = Display Core Range
|
||||||
|
setting.coreRange.description = display enemy core build-limit range
|
||||||
|
setting.unitRange.name = Display Unit Range
|
||||||
|
setting.unitRange.description = toggle to display unit range too.
|
||||||
|
setting.softRangeDrawing.name = Soft Display Range
|
||||||
|
setting.softRangeDrawing.description = toggle to change range display style.
|
||||||
|
|
||||||
setting.selectopacity.name = Select Arrow Opacity
|
setting.selectopacity.name = Select Arrow Opacity
|
||||||
setting.selectopacity.description = use the slider to set opacity of select arrow.
|
setting.selectopacity.description = use the slider to set opacity of select arrow.
|
||||||
@@ -44,44 +62,35 @@ setting.baropacity.name = Health Bar Opacity
|
|||||||
setting.baropacity.description = use the slider to set opacity of unit bar.
|
setting.baropacity.description = use the slider to set opacity of unit bar.
|
||||||
setting.uiopacity.name = UI Background Opacity
|
setting.uiopacity.name = UI Background Opacity
|
||||||
setting.uiopacity.description = use the slider to set opacity of ui background.
|
setting.uiopacity.description = use the slider to set opacity of ui background.
|
||||||
|
|
||||||
setting.scan.name = Enable Block Scanner
|
|
||||||
setting.scan.description = toggle to enable scanner that shows nearly turret and wall hp.
|
|
||||||
setting.coreRange.name = Display Core Range
|
|
||||||
setting.coreRange.description = display enemy core build-limit range
|
|
||||||
setting.rangemax.name = Block Scanner Range
|
|
||||||
setting.rangemax.description = set scan radius of scanner.\nSelect the pencil and enter a number.
|
|
||||||
setting.rangeNearby.name = Display Near Range
|
|
||||||
setting.rangeNearby.description = toggle to display range circle when you approached enemy ranges.
|
|
||||||
setting.unitRange.name = Display Unit Range
|
|
||||||
setting.unitRange.description = toggle to display unit range too.
|
|
||||||
setting.softRangeDrawing.name = Soft Display Range
|
|
||||||
setting.softRangeDrawing.description = toggle to change range display style.
|
|
||||||
setting.softRangeOpacity.name = Soft Range Opacity
|
setting.softRangeOpacity.name = Soft Range Opacity
|
||||||
setting.softRangeOpacity.description = use the slider to set opacity of soft range.
|
setting.softRangeOpacity.description = use the slider to set opacity of soft range.
|
||||||
setting.rangeRadius.name = Near Range Margin
|
|
||||||
setting.rangeRadius.description = set additional distances to show range.
|
setting.gaycursor.name = Enable Mouse Trail Effect [lightgray](only for desktop)[]
|
||||||
setting.allTeamRange.name = Display Player Team Range
|
setting.gaycursor.description =
|
||||||
setting.allTeamRange.description = toggle to display player team's range.
|
setting.unithealthui.name = Display Unit Bar
|
||||||
setting.allTargetRange.name = Display All Target Range
|
setting.unithealthui.description =
|
||||||
setting.allTargetRange.description = toggle to display all range whatever airTarget or groundTarget etc.
|
setting.linkedMass.name = Display mass driver link line
|
||||||
|
setting.linkedMass.description =
|
||||||
|
setting.linkedNode.name = Display node link line
|
||||||
|
setting.linkedNode.description =
|
||||||
|
setting.select.name = Display Select Arrow
|
||||||
|
setting.select.description =
|
||||||
|
setting.deadTarget.name = save locked target even if it's dead
|
||||||
|
setting.deadTarget.description =
|
||||||
|
setting.distanceLine.name = Display distance line from info target
|
||||||
|
setting.distanceLine.description =
|
||||||
|
setting.unitlinelimit.name = UnitLines limit
|
||||||
|
setting.unitlinelimit.description = lots of drawing unitlines drop fps. you need to set lines limit with your device environment.
|
||||||
|
|
||||||
setting.autoShooting.name = Enable Auto Shooting
|
setting.autoShooting.name = Enable Auto Shooting
|
||||||
setting.infoui.name = Display Info UI
|
setting.autoShooting.description =
|
||||||
setting.weaponui.name = Display Weapon Info UI
|
|
||||||
setting.select.name = Display Select Arrow
|
setting.shar-title = UnitInfo Setting
|
||||||
setting.unithealthui.name = Display Unit Bar
|
setting.shar-wave = Wave Setting
|
||||||
setting.ssim.name = Change Bar Style [lightgray](made by ssim)[]
|
setting.shar-range = AutoRange Setting
|
||||||
setting.shar.name = Change Bar Style [lightgray](made by shar)[]
|
setting.shar-opacity = Opacity Setting
|
||||||
setting.shar1.name = Change Bar Style [lightgray](made by shar)[]
|
setting.shar-draw = Overdrawing Setting
|
||||||
setting.shar2.name = Change Bar Style [lightgray](made by shar)[]
|
setting.shar-etc = etc
|
||||||
setting.shar3.name = Change Bar Style [lightgray](made by shar)[]
|
|
||||||
setting.gaycursor.name = Enable Mouse Trail Effect [lightgray](only for desktop)[]
|
|
||||||
setting.allTeam.name = Display all teams' info on item tap
|
|
||||||
setting.deadTarget.name = save locked target even if it's dead
|
|
||||||
setting.linkedMass.name = Display mass driver link line
|
|
||||||
setting.linkedNode.name = Display node link line
|
|
||||||
setting.distanceLine.name = Display distance line from info target
|
|
||||||
|
|
||||||
#Dialog
|
#Dialog
|
||||||
editmaxwave = Edit Waves(int)
|
editmaxwave = Edit Waves(int)
|
||||||
|
|||||||
@@ -22,44 +22,39 @@ shar-stat.powerIn = 전력 생산량: {0}/s
|
|||||||
shar-stat.powerOut = 전력 소모량: {0}/s
|
shar-stat.powerOut = 전력 소모량: {0}/s
|
||||||
|
|
||||||
# Settings
|
# Settings
|
||||||
setting.unitlinelimit.name = 유닛선 제한
|
setting.infoui.name = 정보 UI 표시
|
||||||
setting.unitlinelimit.description = 다수의 유닛선은 fps를 떨어트립니다. 기기 환경에 맞추어 조절해야 합니다.
|
setting.infoui.description =
|
||||||
|
setting.weaponui.name = 무기 정보 UI 표시
|
||||||
setting.wavesetting.name = 단계 UI 설정
|
setting.weaponui.description =
|
||||||
setting.opacitysetting.name = 투명도 설정
|
setting.wavemax.name = 표시할 단계 수
|
||||||
|
setting.wavemax.description = 연필 아이콘을 눌러서 인게임 단계 탭에서 표시될 최대 웨이브 수를 설정합니다.
|
||||||
setting.infoUiScale.name = 정보 UI 스케일링
|
|
||||||
setting.infoUiScale.description = 인게임 좌측 정보 UI의 크기를 설정합니다.
|
|
||||||
setting.coreItemCheckRate.name = 자원 탭: 업데이트 주기
|
|
||||||
setting.pastwave.name = 이전 단계 표시
|
setting.pastwave.name = 이전 단계 표시
|
||||||
setting.pastwave.description = 인게임 단계 탭에서 이전 단계도 표시합니다. 현재 단계는 빨간색으로 강조됩니다.
|
setting.pastwave.description = 인게임 단계 탭에서 이전 단계도 표시합니다. 현재 단계는 빨간색으로 강조됩니다.
|
||||||
setting.emptywave.name = 빈 단계 표시
|
setting.emptywave.name = 빈 단계 표시
|
||||||
setting.emptywave.description = 인게임 단계 탭에서 빈 단계도 표시합니다.
|
setting.emptywave.description = 인게임 단계 탭에서 빈 단계도 표시합니다.
|
||||||
setting.wavemax.name = 표시할 단계 수
|
setting.barstyle.name = 바 스타일 변경
|
||||||
setting.wavemax.description = 연필 아이콘을 눌러서 인게임 단계 탭에서 표시될 최대 웨이브 수를 설정합니다.
|
setting.barstyle.description =
|
||||||
|
setting.infoUiScale.name = 정보 UI 스케일링
|
||||||
|
setting.infoUiScale.description = 인게임 좌측 정보 UI의 크기를 설정합니다.
|
||||||
|
setting.coreItemCheckRate.name = 자원 탭: 업데이트 주기
|
||||||
|
setting.coreItemCheckRate.description =
|
||||||
|
setting.allTeam.name = 자원 탭: 모든 팀 표시
|
||||||
|
setting.allTeam.description =
|
||||||
|
|
||||||
|
|
||||||
setting.scan.name = 블록 스캐너 활성화
|
|
||||||
setting.scan.description = 주변 포탑과 벽의 체력을 표시하는 스캐터를 활성화합니다.
|
|
||||||
setting.rangemax.name = 블록 스캐너 사거리
|
|
||||||
setting.rangemax.description = 연필 아이콘을 눌러서 스캐너 사거리를 설정합니다.
|
|
||||||
setting.coreRange.name = 코어 사거리 표시
|
|
||||||
setting.coreRange.description = 적 코어 건설제한 사거리를 표시합니다.
|
|
||||||
setting.rangeNearby.name = 주변 사거리 표시
|
|
||||||
setting.rangeNearby.description = 적 사거리에 접근했을 경우 사거리를 표시합니다.
|
|
||||||
setting.unitRange.name = 유닛 사거리 표시
|
|
||||||
setting.unitRange.description = 유닛 사거리도 표시합니다.
|
|
||||||
setting.softRangeDrawing.name = 부드러운 사거리 표시
|
|
||||||
setting.softRangeDrawing.description = 사거리를 표시하는 원의 모양이 달라집니다.
|
|
||||||
setting.softRangeOpacity.name = 부드러운 사거리 투명도
|
|
||||||
setting.softRangeOpacity.description = 슬라이더로 부드러운 사거리 투명도를 조절합니다.
|
|
||||||
setting.rangeRadius.name = 사거리 접근 거리
|
setting.rangeRadius.name = 사거리 접근 거리
|
||||||
setting.rangeRadius.description = 사거리를 표시할 추가 거리를 설정합니다.
|
setting.rangeRadius.description = 사거리를 표시할 추가 거리를 설정합니다.
|
||||||
|
setting.rangeNearby.name = 주변 사거리 표시
|
||||||
|
setting.rangeNearby.description = 적 사거리에 접근했을 경우 사거리를 표시합니다.
|
||||||
setting.allTeamRange.name = 플레이어 팀 사거리 표시
|
setting.allTeamRange.name = 플레이어 팀 사거리 표시
|
||||||
setting.allTeamRange.description = 플레이어 팀의 사거리를 표시합니다.
|
setting.allTeamRange.description = 플레이어 팀의 사거리를 표시합니다.
|
||||||
setting.allTargetRange.name = 모든 목표물 사거리 표시
|
setting.allTargetRange.name = 모든 목표물 사거리 표시
|
||||||
setting.allTargetRange.description = 지상 공중 상관없이 모든 사거리를 표시합니다.
|
setting.allTargetRange.description = 지상 공중 상관없이 모든 사거리를 표시합니다.
|
||||||
|
setting.coreRange.name = 코어 사거리 표시
|
||||||
|
setting.coreRange.description = 적 코어 건설제한 사거리를 표시합니다.
|
||||||
|
setting.unitRange.name = 유닛 사거리 표시
|
||||||
|
setting.unitRange.description = 유닛 사거리도 표시합니다.
|
||||||
|
setting.softRangeDrawing.name = 부드러운 사거리 표시
|
||||||
|
setting.softRangeDrawing.description = 사거리를 표시하는 원의 모양이 달라집니다.
|
||||||
|
|
||||||
setting.selectopacity.name = 선택 화살표 투명도
|
setting.selectopacity.name = 선택 화살표 투명도
|
||||||
setting.selectopacity.description = 슬라이더로 선택 화살표의 투명도를 조절합니다.
|
setting.selectopacity.description = 슬라이더로 선택 화살표의 투명도를 조절합니다.
|
||||||
@@ -67,23 +62,35 @@ setting.baropacity.name = 유닛 바 투명도
|
|||||||
setting.baropacity.description = 슬라이더로 유닛 바의 투명도를 조절합니다.
|
setting.baropacity.description = 슬라이더로 유닛 바의 투명도를 조절합니다.
|
||||||
setting.uiopacity.name = UI 배경 투명도
|
setting.uiopacity.name = UI 배경 투명도
|
||||||
setting.uiopacity.description = 슬라이더로 UI 배경 투명도를 조절합니다.
|
setting.uiopacity.description = 슬라이더로 UI 배경 투명도를 조절합니다.
|
||||||
|
setting.softRangeOpacity.name = 부드러운 사거리 투명도
|
||||||
|
setting.softRangeOpacity.description = 슬라이더로 부드러운 사거리 투명도를 조절합니다.
|
||||||
|
|
||||||
|
setting.gaycursor.name = 마우스 꼬리효과 [lightgray](PC 전용)[]
|
||||||
|
setting.gaycursor.description =
|
||||||
|
setting.unithealthui.name = 유닛 바 표시
|
||||||
|
setting.unithealthui.description =
|
||||||
|
setting.linkedMass.name = 매스 드라이버 연결선 표시
|
||||||
|
setting.linkedMass.description =
|
||||||
|
setting.linkedNode.name = 노드 연결선 표시
|
||||||
|
setting.linkedNode.description =
|
||||||
|
setting.select.name = 선택 화살표 표시
|
||||||
|
setting.select.description =
|
||||||
|
setting.deadTarget.name = 고정 목표물이 죽더라도 계속 고정하기
|
||||||
|
setting.deadTarget.description =
|
||||||
|
setting.distanceLine.name = 목표물과의 거리선 표시
|
||||||
|
setting.distanceLine.description =
|
||||||
|
setting.unitlinelimit.name = 유닛선 제한
|
||||||
|
setting.unitlinelimit.description = 다수의 유닛선은 fps를 떨어트립니다. 기기 환경에 맞추어 조절해야 합니다.
|
||||||
|
|
||||||
setting.autoShooting.name = 자동 사격 활성화
|
setting.autoShooting.name = 자동 사격 활성화
|
||||||
setting.infoui.name = 정보 UI 표시
|
setting.autoShooting.description =
|
||||||
setting.weaponui.name = 무기 정보 UI 표시
|
|
||||||
setting.select.name = 선택 화살표 표시
|
setting.shar-title = UnitInfo 설정
|
||||||
setting.unithealthui.name = 유닛 바 표시
|
setting.shar-wave = 단계 설정
|
||||||
setting.ssim.name = 바 스타일 변경 [lightgray](ssim 만듬)[]
|
setting.shar-range = 자동 사거리 설정
|
||||||
setting.shar.name = 바 스타일 변경 [lightgray](shar 만듬)[]
|
setting.shar-opacity = 투명도 설정
|
||||||
setting.shar1.name = 바 스타일 변경 [lightgray](shar 만듬)[]
|
setting.shar-draw = 덧그리기 설정
|
||||||
setting.shar2.name = 바 스타일 변경 [lightgray](shar 만듬)[]
|
setting.shar-etc = 기타
|
||||||
setting.shar3.name = 바 스타일 변경 [lightgray](shar 만듬)[]
|
|
||||||
setting.gaycursor.name = 마우스 꼬리효과 [lightgray](PC 전용)[]
|
|
||||||
setting.allTeam.name = 자원 탭에 모든 팀 표시
|
|
||||||
setting.deadTarget.name = 고정 목표물이 죽더라도 계속 고정하기
|
|
||||||
setting.linkedMass.name = 매스 드라이버 연결선 표시
|
|
||||||
setting.linkedNode.name = 노드 연결선 표시
|
|
||||||
setting.distanceLine.name = 목표물과의 거리선 표시
|
|
||||||
|
|
||||||
#Dialog
|
#Dialog
|
||||||
editmaxwave = 최대 단계 수정하기(정수)
|
editmaxwave = 최대 단계 수정하기(정수)
|
||||||
@@ -99,4 +106,4 @@ hud.item = 자원 정보
|
|||||||
hud.cancel = 닫음
|
hud.cancel = 닫음
|
||||||
|
|
||||||
#Mod
|
#Mod
|
||||||
shar-description = 여러가지 다양한 정보들을 인게임에서 보여주는 다기능 정보 모드.\n\n[#AE00FB]인게임 UI:[] 좌측 탭에 위치했으며 커서를 통한 유닛/건물이나 단계 목록, 코어, 자원 정보를 알려줍니다.\n\n[#B5FFD9]유닛/건물 정보:[] 커서로 유닛이나 건물의 정보를 표시합니다.\n\n[#B5FFD9]단계 정보:[] 유닛 종류와 수, 보스 유무를 목록에 담아 보여줍니다. 클릭해서 유닛 정보도 열람할 수 있습니다.\n\n[#B5FFD9]코어 정보:[] 각 팀의 코어 위치와 체력을 보여줍니다. 클릭해서 카메라 위치를 변경할 수 있습니다.\n\n[#B5FFD9]타일 정보:[] 커서 위치의 블록/타일/광물 아이콘과 좌표를 보여줍니다. 남은 단계 유닛도 보여줍니다.\n\n[#B5FFD9]자원 정보:[] 각 팀의 현재 자원(증감치)와 유닛 수를 보여줍니다.\n\n\n[#AE00FB]인게임 그리기:[] 각 유닛이나 블록같은 특정 위치에 여러가지 정보를 덧그립니다.\n\n[#B5FFD9]블록 스캐너:[] 커서 주변의 포탑과 벽의 사거리와 체력을 바로 표시합니다.\n\n[#B5FFD9]유닛 바:[] 각 팀의 유닛의 탄약, 방어막, 체력을 바로 보여줍니다.\n\n[#B5FFD9]포탑 사거리:[] 포탑 사거리를 표시합니다.\n\n[#B5FFD9]전선 연결 표시:[] 커서에 있는 블록과 전력으로 연결된 다른 블록들을 초록색 전선으로 이어서 그립니다.\n\n[#B5FFD9]매스 연결 표시:[] 커서에 있는 드라이버와 연결된 다른 드라이버들을 선으로 이어서 그립니다.\n\n
|
shar-description = 여러가지 다양한 정보들을 인게임에서 보여주는 다기능 정보 모드.\n\n[#AE00FB]인게임 UI:[] 좌측 탭에 위치했으며 커서를 통한 유닛/건물이나 단계 목록, 코어, 자원 정보를 알려줍니다.\n\n[#B5FFD9]유닛/건물 정보:[] 커서로 유닛이나 건물의 정보를 표시합니다.\n\n[#B5FFD9]단계 정보:[] 유닛 종류와 수, 보스 유무를 목록에 담아 보여줍니다. 클릭해서 유닛 정보도 열람할 수 있습니다.\n\n[#B5FFD9]코어 정보:[] 각 팀의 코어 위치와 체력을 보여줍니다. 클릭해서 카메라 위치를 변경할 수 있습니다.\n\n[#B5FFD9]타일 정보:[] 커서 위치의 블록/타일/광물 아이콘과 좌표를 보여줍니다. 남은 단계 유닛도 보여줍니다.\n\n[#B5FFD9]자원 정보:[] 각 팀의 현재 자원(증감치)와 유닛 수를 보여줍니다.\n\n\n[#AE00FB]인게임 그리기:[] 각 유닛이나 블록같은 특정 위치에 여러가지 정보를 덧그립니다.\n\n[#B5FFD9]블록 스캐너:[] 커서 주변의 포탑과 벽의 사거리와 체력을 바로 표시합니다.\n\n[#B5FFD9]유닛 바:[] 각 팀의 유닛의 탄약, 방어막, 체력을 바로 보여줍니다.\n\n[#B5FFD9]포탑 사거리:[] 포탑 사거리를 표시합니다.\n\n[#B5FFD9]전선 연결 표시:[] 커서에 있는 블록과 전력으로 연결된 다른 블록들을 초록색 전선으로 이어서 그립니다.\n\n[#B5FFD9]매스 연결 표시:[] 커서에 있는 드라이버와 연결된 다른 드라이버들을 선으로 이어서 그립니다.
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
"description": "The mod displays more information in-game, such as unit/building, wave, core, tile, item/unit total info etc",
|
"description": "The mod displays more information in-game, such as unit/building, wave, core, tile, item/unit total info etc",
|
||||||
"version": "1.3.3.1",
|
"version": "1.3.3.1",
|
||||||
"main": "UnitInfo.core.Main",
|
"main": "UnitInfo.core.Main",
|
||||||
"minGameVersion": "130",
|
"minGameVersion": "130.1",
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"hidden": true,
|
"hidden": true,
|
||||||
"java": true
|
"java": true
|
||||||
|
|||||||
@@ -3,6 +3,6 @@ pArtifactFilename = UnitInfo.jar
|
|||||||
# Group of project (should line up with dirs in src/)
|
# Group of project (should line up with dirs in src/)
|
||||||
pGroup = sharlotte
|
pGroup = sharlotte
|
||||||
# Version of Mindustry to use (if not working, consult jitpack.io)
|
# Version of Mindustry to use (if not working, consult jitpack.io)
|
||||||
pMindustryVersion = v130
|
pMindustryVersion = v130.1
|
||||||
# Minimum API level for d8 (if you don't know what this is, leave it unless d8 yells at you)
|
# Minimum API level for d8 (if you don't know what this is, leave it unless d8 yells at you)
|
||||||
pMinApi = 26
|
pMinApi = 26
|
||||||
@@ -358,11 +358,14 @@ public class HudUi {
|
|||||||
t.table(tt -> {
|
t.table(tt -> {
|
||||||
tt.add(new Stack() {{
|
tt.add(new Stack() {{
|
||||||
add(new Table(ttt -> {
|
add(new Table(ttt -> {
|
||||||
ttt.image(type.uiIcon).size(iconMed);
|
ttt.image(type.uiIcon).size(iconSmall);
|
||||||
}));
|
}));
|
||||||
add(new Table(ttt -> {
|
add(new Table(ttt -> {
|
||||||
ttt.right().bottom();
|
ttt.right().bottom();
|
||||||
ttt.label(() -> Groups.unit.count(u -> u.type == type && u.team == state.rules.waveTeam && u.isBoss()) + "");
|
Label label = new Label(() -> Groups.unit.count(u -> u.type == type && u.team == state.rules.waveTeam && u.isBoss()) + "");
|
||||||
|
label.setFontScale(0.75f);
|
||||||
|
ttt.add(label);
|
||||||
|
ttt.pack();
|
||||||
}));
|
}));
|
||||||
add(new Table(ttt -> {
|
add(new Table(ttt -> {
|
||||||
ttt.top().right();
|
ttt.top().right();
|
||||||
@@ -372,8 +375,8 @@ public class HudUi {
|
|||||||
ttt.pack();
|
ttt.pack();
|
||||||
}));
|
}));
|
||||||
}}).pad(6);
|
}}).pad(6);
|
||||||
if(++i[0] % 6 == 0) tt.row();
|
|
||||||
});
|
});
|
||||||
|
if(++i[0] % 6 == 0) t.row();
|
||||||
});
|
});
|
||||||
t.row();
|
t.row();
|
||||||
i[0] = 0;
|
i[0] = 0;
|
||||||
@@ -381,15 +384,18 @@ public class HudUi {
|
|||||||
t.table(tt -> {
|
t.table(tt -> {
|
||||||
tt.add(new Stack() {{
|
tt.add(new Stack() {{
|
||||||
add(new Table(ttt -> {
|
add(new Table(ttt -> {
|
||||||
ttt.add(new Image(type.uiIcon)).size(iconMed);
|
ttt.add(new Image(type.uiIcon)).size(iconSmall);
|
||||||
}));
|
}));
|
||||||
add(new Table(ttt -> {
|
add(new Table(ttt -> {
|
||||||
ttt.right().bottom();
|
ttt.right().bottom();
|
||||||
ttt.add(new Label(() -> Groups.unit.count(u -> u.type == type && u.team == state.rules.waveTeam && !u.isBoss()) + ""));
|
Label label = new Label(() -> Groups.unit.count(u -> u.type == type && u.team == state.rules.waveTeam && !u.isBoss()) + "");
|
||||||
|
label.setFontScale(0.75f);
|
||||||
|
ttt.add(label);
|
||||||
|
ttt.pack();
|
||||||
}));
|
}));
|
||||||
}}).pad(6);
|
}}).pad(6);
|
||||||
if(++i[0] % 6 == 0) tt.row();
|
|
||||||
});
|
});
|
||||||
|
if(++i[0] % 6 == 0) t.row();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -425,7 +431,7 @@ public class HudUi {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
Table pathlineTable = new Table(t -> {
|
Table pathlineTable = new Table(t -> {
|
||||||
t.right();
|
t.left();
|
||||||
|
|
||||||
Button pathBtn = new ImageButton(new ScaledNinePatchDrawable(new NinePatch(Icon.grid.getRegion()), 0.5f), Styles.clearToggleTransi);
|
Button pathBtn = new ImageButton(new ScaledNinePatchDrawable(new NinePatch(Icon.grid.getRegion()), 0.5f), Styles.clearToggleTransi);
|
||||||
Button unitBtn = new ImageButton(new ScaledNinePatchDrawable(new NinePatch(Icon.grid.getRegion()), 0.5f), Styles.clearToggleTransi);
|
Button unitBtn = new ImageButton(new ScaledNinePatchDrawable(new NinePatch(Icon.grid.getRegion()), 0.5f), Styles.clearToggleTransi);
|
||||||
@@ -875,7 +881,7 @@ public class HudUi {
|
|||||||
Label label2 = new Label(()->getTarget() == null ? "(" + 0 + ", " + 0 + ")" : "(" + Strings.fixed(getTarget().x() / tilesize, 2) + ", " + Strings.fixed(getTarget().y() / tilesize, 2) + ")");
|
Label label2 = new Label(()->getTarget() == null ? "(" + 0 + ", " + 0 + ")" : "(" + Strings.fixed(getTarget().x() / tilesize, 2) + ", " + Strings.fixed(getTarget().y() / tilesize, 2) + ")");
|
||||||
label2.setFontScale(modUiScale);
|
label2.setFontScale(modUiScale);
|
||||||
to.add(label2);
|
to.add(label2);
|
||||||
})){{allowMobile = true;}});
|
})));
|
||||||
tt.update(()->tt.setBackground(((NinePatchDrawable)Tex.underline2).tint(getTarget().isNull() ? Color.gray : getTarget().team().color)));
|
tt.update(()->tt.setBackground(((NinePatchDrawable)Tex.underline2).tint(getTarget().isNull() ? Color.gray : getTarget().team().color)));
|
||||||
});
|
});
|
||||||
t.row();
|
t.row();
|
||||||
|
|||||||
@@ -82,9 +82,8 @@ public class Main extends Mod {
|
|||||||
|
|
||||||
Events.run(Trigger.draw, () -> {
|
Events.run(Trigger.draw, () -> {
|
||||||
int[] units = {0};
|
int[] units = {0};
|
||||||
Groups.unit.each(u -> {
|
if(pathLine || unitLine || logicLine) Groups.unit.each(u -> {
|
||||||
Team team = u.team;
|
Team team = u.team;
|
||||||
otherCores = Groups.build.count(b -> b instanceof CoreBlock.CoreBuild && b.team != team);
|
|
||||||
UnitController c = u.controller();
|
UnitController c = u.controller();
|
||||||
UnitCommand com = team.data().command;
|
UnitCommand com = team.data().command;
|
||||||
|
|
||||||
@@ -109,6 +108,7 @@ public class Main extends Mod {
|
|||||||
c instanceof FlyingAI || //not flying anyway
|
c instanceof FlyingAI || //not flying anyway
|
||||||
com == UnitCommand.idle) return; //not idle
|
com == UnitCommand.idle) return; //not idle
|
||||||
|
|
||||||
|
otherCores = Groups.build.count(b -> b instanceof CoreBlock.CoreBuild && b.team != team);
|
||||||
getNextTile(u.tileOn(), u.pathType(), team, com.ordinal());
|
getNextTile(u.tileOn(), u.pathType(), team, com.ordinal());
|
||||||
pathTiles.filter(Objects::nonNull);
|
pathTiles.filter(Objects::nonNull);
|
||||||
for(int i = 1; i < pathTiles.size; i++) {
|
for(int i = 1; i < pathTiles.size; i++) {
|
||||||
@@ -141,7 +141,6 @@ public class Main extends Mod {
|
|||||||
pathTiles.clear();
|
pathTiles.clear();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
Draw.reset();
|
|
||||||
|
|
||||||
if(settings.getBool("blockstatus")) Groups.build.each(build -> {
|
if(settings.getBool("blockstatus")) Groups.build.each(build -> {
|
||||||
if(Vars.player != null && Vars.player.team() == build.team) return;
|
if(Vars.player != null && Vars.player.team() == build.team) return;
|
||||||
@@ -164,16 +163,6 @@ public class Main extends Mod {
|
|||||||
if(Core.settings.getBool("unithealthui"))
|
if(Core.settings.getBool("unithealthui"))
|
||||||
Groups.unit.each(unit -> new FreeBar().draw(unit));
|
Groups.unit.each(unit -> new FreeBar().draw(unit));
|
||||||
|
|
||||||
if(Core.settings.getBool("scan")){
|
|
||||||
float range = settings.getInt("rangemax") * 8f;
|
|
||||||
for(Team team : Team.all)
|
|
||||||
indexer.eachBlock(team, Core.input.mouseWorldX(), Core.input.mouseWorldY(), range, b -> true, b -> new FreeBar().draw(b));
|
|
||||||
Draw.color(Tmp.c1.set(Pal.accent).a(0.75f + Mathf.absin(3, 0.25f)));
|
|
||||||
for(int i = 0; i < 4; i++)
|
|
||||||
Lines.swirl(Core.input.mouseWorldX(), Core.input.mouseWorldY(), range, 0.15f, 90 * i + Time.time % 360);
|
|
||||||
Draw.reset();
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!mobile && !Vars.state.isPaused() && settings.getBool("gaycursor"))
|
if(!mobile && !Vars.state.isPaused() && settings.getBool("gaycursor"))
|
||||||
Fx.mine.at(Core.input.mouseWorldX(), Core.input.mouseWorldY(), Tmp.c2.set(Color.red).shiftHue(Time.time * 1.5f));
|
Fx.mine.at(Core.input.mouseWorldX(), Core.input.mouseWorldY(), Tmp.c2.set(Color.red).shiftHue(Time.time * 1.5f));
|
||||||
|
|
||||||
|
|||||||
@@ -1,329 +1,181 @@
|
|||||||
package UnitInfo.core;
|
package UnitInfo.core;
|
||||||
|
|
||||||
import arc.*;
|
import arc.*;
|
||||||
|
import arc.func.*;
|
||||||
import arc.graphics.*;
|
import arc.graphics.*;
|
||||||
|
import arc.scene.Group;
|
||||||
import arc.scene.event.*;
|
import arc.scene.event.*;
|
||||||
import arc.scene.ui.*;
|
import arc.scene.ui.*;
|
||||||
import arc.scene.ui.layout.*;
|
import arc.scene.ui.layout.*;
|
||||||
|
import arc.scene.ui.layout.Stack;
|
||||||
import arc.struct.*;
|
import arc.struct.*;
|
||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.*;
|
|
||||||
import mindustry.core.*;
|
|
||||||
import mindustry.gen.*;
|
|
||||||
import mindustry.ui.*;
|
import mindustry.ui.*;
|
||||||
import mindustry.ui.dialogs.*;
|
import mindustry.ui.dialogs.*;
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
|
|
||||||
import static arc.Core.*;
|
import static arc.Core.*;
|
||||||
import static mindustry.Vars.*;
|
import static mindustry.Vars.*;
|
||||||
|
|
||||||
public class SettingS {
|
public class SettingS {
|
||||||
public static SettingsMenuDialog.SettingsTable waveTable = new SettingsMenuDialog.SettingsTable();
|
public SettingsMenuDialog.SettingsTable sharset;
|
||||||
public static SettingsMenuDialog.SettingsTable opacityTable = new SettingsMenuDialog.SettingsTable();
|
|
||||||
public static SettingsMenuDialog.SettingsTable scanTable = new SettingsMenuDialog.SettingsTable();
|
|
||||||
|
|
||||||
public void addGraphicCheckSetting(String key, boolean def){
|
public void addGraphicSlideSetting(String key, int def, int min, int max, int step, SettingsMenuDialog.StringProcessor s, Seq<SharSetting> list){
|
||||||
ui.settings.graphics.checkPref(key, def);
|
list.add(new SharSetting(key, def) {
|
||||||
}
|
|
||||||
public void addGraphicSlideSetting(String key, int def, int min, int max, int step, SettingsMenuDialog.StringProcessor s){
|
|
||||||
ui.settings.graphics.sliderPref(key, def, min, max, step, s);
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
public void addGraphicSlideSetting(String key, int def, int min, int max, int step, SettingsMenuDialog.StringProcessor s, Seq<SettingsMenuDialog.SettingsTable.SettingS> list){
|
|
||||||
list.add(new SettingsMenuDialog.SettingsTable.SettingS(key) {
|
|
||||||
{
|
|
||||||
Core.settings.defaults(name, def);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void add(SettingsMenuDialog.SettingsTable table){
|
public void add(Table table){
|
||||||
Slider slider = new Slider(min, max, step, false);
|
|
||||||
|
|
||||||
if(Version.build <= 128) slider.addListener(new Tooltip(t -> t.background(Tex.button).table(to -> to.add("[lightgray]" + Core.bundle.get("setting." + key + ".description") + "[]"))));
|
|
||||||
slider.setValue(settings.getInt(name));
|
|
||||||
|
|
||||||
Label value = new Label("");
|
Label value = new Label("");
|
||||||
value.setStyle(Styles.outlineLabel);
|
value.setStyle(Styles.outlineLabel);
|
||||||
value.touchable = Touchable.disabled;
|
value.touchable = Touchable.disabled;
|
||||||
|
value.setAlignment(Align.center);
|
||||||
|
value.setWrap(true);
|
||||||
|
|
||||||
|
Slider slider = new Slider(min, max, step, false);
|
||||||
|
slider.setValue(settings.getInt(name));
|
||||||
slider.changed(() -> {
|
slider.changed(() -> {
|
||||||
settings.put(name, (int)slider.getValue());
|
settings.put(name, (int)slider.getValue());
|
||||||
value.setText(title + ": " + s.get((int)slider.getValue()));
|
value.setText(title + ": " + s.get((int)slider.getValue()));
|
||||||
});
|
});
|
||||||
|
|
||||||
value.setAlignment(Align.center);
|
|
||||||
value.setWrap(true);
|
|
||||||
|
|
||||||
slider.change();
|
slider.change();
|
||||||
|
|
||||||
table.stack(slider, value).width(Math.min(Core.graphics.getWidth() / 1.2f, 460f)).left().padTop(4);
|
table.stack(slider, value).width(Math.min(Core.graphics.getWidth() / 1.2f, 460f)).row();
|
||||||
table.row();
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
public void addGraphicCheckSetting(String key, boolean def, Seq<SettingsMenuDialog.SettingsTable.SettingS> list){
|
|
||||||
list.add(new SettingsMenuDialog.SettingsTable.SettingS() {
|
|
||||||
{
|
|
||||||
name = key;
|
|
||||||
title = bundle.get("setting." + key + ".name");
|
|
||||||
|
|
||||||
Core.settings.defaults(name, def);
|
public void addGraphicCheckSetting(String key, boolean def, Seq<SharSetting> list){
|
||||||
}
|
list.add(new SharSetting(key, def) {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void add(SettingsMenuDialog.SettingsTable table) {
|
public void add(Table table) {
|
||||||
CheckBox box = new CheckBox(title);
|
CheckBox box = new CheckBox(title);
|
||||||
if(Version.build <= 128) box.addListener(new Tooltip(t -> t.background(Tex.button).table(to -> to.add("[lightgray]" + Core.bundle.get("setting." + key + ".description") + "[]"))));
|
|
||||||
|
|
||||||
box.update(() -> box.setChecked(settings.getBool(name)));
|
box.update(() -> box.setChecked(settings.getBool(name)));
|
||||||
|
|
||||||
box.changed(() -> settings.put(name, box.isChecked()));
|
box.changed(() -> settings.put(name, box.isChecked()));
|
||||||
|
|
||||||
box.left();
|
table.add(box).row();
|
||||||
table.add(box).left().padTop(3f);
|
|
||||||
table.row();
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addGraphicTypeSetting(String key, int defs, String dialogs, String invalid, int warnMax, Seq<SettingsMenuDialog.SettingsTable.SettingS> list){
|
public void addGraphicTypeSetting(String key, float min, float max, int def, boolean integer, Boolp condition, Func<String, String> h, Seq<SharSetting> list){
|
||||||
list.add(new SettingsMenuDialog.SettingsTable.SettingS() {
|
list.add(new SharSetting(key, def) {
|
||||||
public final int def;
|
|
||||||
{
|
|
||||||
def = defs;
|
|
||||||
name = key;
|
|
||||||
title = Core.bundle.get("setting." + key + ".name");
|
|
||||||
|
|
||||||
Core.settings.defaults(name, def);
|
|
||||||
}
|
|
||||||
|
|
||||||
public final StringBuilder message = new StringBuilder();
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void add(SettingsMenuDialog.SettingsTable settingsTable) {
|
public void add(Table settingsTable) {
|
||||||
String settingTitle = title;
|
final String[] str = {""};
|
||||||
String settingName = name;
|
|
||||||
Label label = new Label(title + ": " + def);
|
|
||||||
|
|
||||||
Table button = new Table(t -> t.button(Icon.pencil, () -> {
|
|
||||||
if(Vars.mobile){
|
|
||||||
Core.input.getTextInput(new Input.TextInput(){{
|
|
||||||
text = message.toString();
|
|
||||||
multiline = false;
|
|
||||||
maxLength = String.valueOf(Integer.MAX_VALUE).length();
|
|
||||||
accepted = str -> {
|
|
||||||
|
|
||||||
try {
|
|
||||||
int number = Integer.parseInt(str);
|
|
||||||
if(number >= warnMax){
|
|
||||||
new Dialog(""){{
|
|
||||||
setFillParent(true);
|
|
||||||
cont.margin(15f);
|
|
||||||
cont.add("@warn");
|
|
||||||
cont.row();
|
|
||||||
cont.image().width(300f).pad(2).height(4f).color(Color.scarlet);
|
|
||||||
cont.row();
|
|
||||||
cont.add("@warning").pad(2f).growX().wrap().get().setAlignment(Align.center);
|
|
||||||
cont.row();
|
|
||||||
cont.table(t -> {
|
|
||||||
t.button("@yes", () -> {
|
|
||||||
this.hide();
|
|
||||||
Core.settings.put(settingName, number);
|
|
||||||
label.setText(settingTitle + ": " + number);
|
|
||||||
}).size(120, 50);
|
|
||||||
t.button("@no", () -> {
|
|
||||||
this.hide();
|
|
||||||
Core.settings.put(settingName, def);
|
|
||||||
label.setText(settingTitle + ": " + Core.settings.getInt(settingName));
|
|
||||||
}).size(120, 50);
|
|
||||||
}).pad(5);
|
|
||||||
closeOnBack();
|
|
||||||
}}.show();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
Core.settings.put(settingName, number);
|
|
||||||
label.setText(settingTitle + ": " + number);
|
|
||||||
}
|
|
||||||
} catch(Throwable e) {
|
|
||||||
Log.info(e);
|
|
||||||
ui.showErrorMessage("@invalid");
|
|
||||||
|
|
||||||
Core.settings.put(settingName, def);
|
|
||||||
label.setText(settingTitle + ": " + def);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}});
|
|
||||||
}else{
|
|
||||||
BaseDialog dialog = new BaseDialog(dialogs);
|
|
||||||
dialog.setFillParent(false);
|
|
||||||
TextArea a = dialog.cont.add(new TextArea(message.toString().replace("\r", "\n"))).size(140f, 80f).get();
|
|
||||||
a.setMaxLength(String.valueOf(Integer.MAX_VALUE).length());
|
|
||||||
dialog.buttons.button("@ok", () -> {
|
|
||||||
try {
|
|
||||||
int number = Integer.parseInt(a.getText());
|
|
||||||
if(number >= warnMax){
|
|
||||||
String name1 = name;
|
|
||||||
String title1 = title;
|
|
||||||
new Dialog(""){{
|
|
||||||
setFillParent(true);
|
|
||||||
cont.margin(15f);
|
|
||||||
cont.add("@warn");
|
|
||||||
cont.row();
|
|
||||||
cont.image().width(300f).pad(2).height(4f).color(Color.scarlet);
|
|
||||||
cont.row();
|
|
||||||
cont.add("@warning").pad(2f).growX().wrap().get().setAlignment(Align.center);
|
|
||||||
cont.row();
|
|
||||||
cont.table(t -> {
|
|
||||||
t.button("@yes", () -> {
|
|
||||||
this.hide();
|
|
||||||
Core.settings.put(name1, number);
|
|
||||||
label.setText(title1 + ": " + number);
|
|
||||||
}).size(120, 50);
|
|
||||||
t.button("@no", () -> {
|
|
||||||
this.hide();
|
|
||||||
Core.settings.put(name1, def);
|
|
||||||
label.setText(title1 + ": " + Core.settings.getInt(name1));
|
|
||||||
}).size(120, 50);
|
|
||||||
}).pad(5);
|
|
||||||
closeOnBack();
|
|
||||||
}}.show();
|
|
||||||
}else {
|
|
||||||
Core.settings.put(name, number);
|
|
||||||
label.setText(title + ": " + number);
|
|
||||||
}
|
|
||||||
} catch(Throwable e) {
|
|
||||||
Log.info(e);
|
|
||||||
ui.showErrorMessage(invalid);
|
|
||||||
|
|
||||||
Core.settings.put(name, def);
|
|
||||||
label.setText(title + ": " + def);
|
|
||||||
}
|
|
||||||
|
|
||||||
dialog.hide();
|
|
||||||
}).size(70f, 50f);
|
|
||||||
|
|
||||||
dialog.show();
|
|
||||||
}
|
|
||||||
}).size(40f));
|
|
||||||
|
|
||||||
settingsTable.table(t -> {
|
settingsTable.table(t -> {
|
||||||
t.left().defaults().left();
|
t.add(new Label(title + ": ")).left().padRight(5)
|
||||||
t.add(label).minWidth(label.getPrefWidth() / Scl.scl(1.0F) + 50.0F);
|
.update(a -> a.setColor(condition.get() ? Color.white : Color.gray));
|
||||||
t.add(button).size(40F);
|
|
||||||
if(Version.build <= 128) t.addListener(new Tooltip(tt -> tt.background(Tex.button).table(to -> to.add("[lightgray]" + Core.bundle.get("setting." + key + ".description") + "[]"))));
|
|
||||||
}).left().padTop(3.0F);
|
|
||||||
settingsTable.row();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
public void addGraphicDialogSetting(String key, Seq<SettingsMenuDialog.SettingsTable.SettingS> list, SettingsMenuDialog.SettingsTable table){
|
t.field((integer ? settings.getInt(key) : settings.getFloat(key)) + str[0], s -> {
|
||||||
ui.settings.graphics.pref(new SettingsMenuDialog.SettingsTable.SettingS() {
|
settings.put(key, integer ? Strings.parseInt(s) : Strings.parseFloat(s));
|
||||||
{
|
str[0] = h.get(s);
|
||||||
name = key;
|
}).update(a -> a.setDisabled(!condition.get()))
|
||||||
title = Core.bundle.get("setting." + key + ".name");
|
.valid(f -> Strings.canParsePositiveFloat(f) && Strings.parseFloat(f) >= min && Strings.parseFloat(f) <= max).width(120f).left();
|
||||||
|
|
||||||
Core.settings.defaults(name, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
public Table rebuild() {
|
|
||||||
table.clearChildren();
|
|
||||||
|
|
||||||
Iterator<SettingsMenuDialog.SettingsTable.SettingS> var1 = list.iterator();
|
|
||||||
|
|
||||||
while(var1.hasNext()) {
|
|
||||||
SettingsMenuDialog.SettingsTable.SettingS setting = var1.next();
|
|
||||||
setting.add(table);
|
|
||||||
}
|
|
||||||
table.button(Core.bundle.get("settings.reset", "Reset to Defaults"), () -> {
|
|
||||||
Iterator<SettingsMenuDialog.SettingsTable.SettingS> var2 = list.iterator();
|
|
||||||
|
|
||||||
while(var2.hasNext()) {
|
|
||||||
SettingsMenuDialog.SettingsTable.SettingS setting = var1.next();
|
|
||||||
if (setting.name != null && setting.title != null) {
|
|
||||||
Core.settings.put(setting.name, Core.settings.getDefault(setting.name));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
rebuild();
|
|
||||||
}).margin(14.0F).width(240.0F).pad(6.0F);
|
|
||||||
|
|
||||||
return table;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void add(SettingsMenuDialog.SettingsTable settingsTable) {
|
|
||||||
settingsTable.table(Core.scene.getStyle(Button.ButtonStyle.class).up, t->{
|
|
||||||
t.add(rebuild());
|
|
||||||
t.row();
|
|
||||||
});
|
});
|
||||||
settingsTable.row();
|
settingsTable.row();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
public void init(){
|
public void init(){
|
||||||
/*
|
BaseDialog dialog = new BaseDialog("UnitInfo Setting");
|
||||||
Seq<SettingsMenuDialog.SettingsTable.SettingS> waveSeq = new Seq<>();
|
dialog.addCloseButton();
|
||||||
addGraphicCheckSetting("pastwave", false, waveSeq);
|
sharset = new SettingsMenuDialog.SettingsTable();
|
||||||
addGraphicCheckSetting("emptywave", true, waveSeq);
|
dialog.cont.center().add(sharset);
|
||||||
addGraphicTypeSetting("wavemax", 100, "@editmaxwave","@invalid", 200, waveSeq);
|
ui.settings.shown(() -> {
|
||||||
addGraphicDialogSetting("wavesetting", waveSeq, waveTable);
|
Table settingUi = (Table)((Group)((Group)(ui.settings.getChildren().get(1))).getChildren().get(0)).getChildren().get(0); //This looks so stupid lol - lmfao
|
||||||
|
settingUi.row();
|
||||||
|
settingUi.button(bundle.get("setting.shar-title"), Styles.cleart, dialog::show);
|
||||||
|
});
|
||||||
|
|
||||||
Seq<SettingsMenuDialog.SettingsTable.SettingS> scanSeq = new Seq<>();
|
|
||||||
addGraphicCheckSetting("scan", false, scanSeq);
|
|
||||||
addGraphicTypeSetting("rangemax", 10, "@editrange","@invalid", 100, scanSeq);
|
|
||||||
addGraphicCheckSetting("rangeNearby", true, scanSeq);
|
|
||||||
addGraphicCheckSetting("allTeamRange", false, scanSeq);
|
|
||||||
addGraphicCheckSetting("allTargetRange", false, scanSeq);
|
|
||||||
addGraphicCheckSetting("unitRange", false, scanSeq);
|
|
||||||
addGraphicCheckSetting("softRangeDrawing", false, scanSeq);
|
|
||||||
addGraphicSlideSetting("softRangeOpacity", 10, 0, 25, 1, s -> s + "%", scanSeq);
|
|
||||||
addGraphicSlideSetting("rangeRadius", 5, 0, 20, 1, s -> s + "tiles", scanSeq);
|
|
||||||
addGraphicDialogSetting("wavesetting", scanSeq, scanTable);
|
|
||||||
|
|
||||||
Seq<SettingsMenuDialog.SettingsTable.SettingS> opacitySeq = new Seq<>();
|
Seq<Seq<SharSetting>> settingSeq = new Seq<>();
|
||||||
|
Seq<SharSetting> tapSeq = new Seq<>();
|
||||||
|
addGraphicCheckSetting("infoui", true, tapSeq);
|
||||||
|
addGraphicCheckSetting("weaponui", true, tapSeq);
|
||||||
|
addGraphicTypeSetting("wavemax", 0, 100,200, true, () -> true, s -> s + "waves", tapSeq);
|
||||||
|
addGraphicCheckSetting("pastwave", false, tapSeq);
|
||||||
|
addGraphicCheckSetting("emptywave", true, tapSeq);
|
||||||
|
addGraphicSlideSetting("barstyle", 0, 0, 5, 1, s -> s == 0 ? "default bar" : s + "th bar", tapSeq);
|
||||||
|
addGraphicSlideSetting("infoUiScale", 100, 50, 100, 5, s -> s + "%", tapSeq);
|
||||||
|
addGraphicSlideSetting("coreItemCheckRate", 60, 6, 180, 6, s -> Strings.fixed(s/60f,1) + "sec", tapSeq);
|
||||||
|
addGraphicCheckSetting("allTeam", false, tapSeq);
|
||||||
|
|
||||||
|
Seq<SharSetting> rangeSeq = new Seq<>();
|
||||||
|
addGraphicTypeSetting("rangeRadius", 0, 50, 20, true, () -> true, s -> s + "tiles", rangeSeq);
|
||||||
|
addGraphicCheckSetting("rangeNearby", true, rangeSeq);
|
||||||
|
addGraphicCheckSetting("allTeamRange", false, rangeSeq);
|
||||||
|
addGraphicCheckSetting("allTargetRange", false, rangeSeq);
|
||||||
|
addGraphicCheckSetting("coreRange", false, rangeSeq);
|
||||||
|
addGraphicCheckSetting("unitRange", false, rangeSeq);
|
||||||
|
addGraphicCheckSetting("softRangeDrawing", false, rangeSeq);
|
||||||
|
|
||||||
|
Seq<SharSetting> opacitySeq = new Seq<>();
|
||||||
addGraphicSlideSetting("selectopacity", 50, 0, 100, 5, s -> s + "%", opacitySeq);
|
addGraphicSlideSetting("selectopacity", 50, 0, 100, 5, s -> s + "%", opacitySeq);
|
||||||
addGraphicSlideSetting("baropacity", 50, 0, 100, 5, s -> s + "%", opacitySeq);
|
addGraphicSlideSetting("baropacity", 50, 0, 100, 5, s -> s + "%", opacitySeq);
|
||||||
addGraphicSlideSetting("uiopacity", 50, 0, 100, 5, s -> s + "%", opacitySeq);
|
addGraphicSlideSetting("uiopacity", 50, 0, 100, 5, s -> s + "%", opacitySeq);
|
||||||
addGraphicDialogSetting("opacitysetting", opacitySeq, opacityTable);
|
addGraphicSlideSetting("softRangeOpacity", 10, 0, 25, 1, s -> s + "%", opacitySeq);
|
||||||
*/
|
|
||||||
|
|
||||||
addGraphicSlideSetting("unitlinelimit", 50, 50, 250, 10, s -> s + "units");
|
Seq<SharSetting> drawSeq = new Seq<>();
|
||||||
addGraphicSlideSetting("infoUiScale", 100, 50, 100, 5, s -> s + "%");
|
addGraphicCheckSetting("gaycursor", false, drawSeq);
|
||||||
addGraphicSlideSetting("coreItemCheckRate", 60, 6, 180, 6, s -> Strings.fixed(s/60f,1) + "sec");
|
addGraphicCheckSetting("unithealthui", true, drawSeq);
|
||||||
addGraphicCheckSetting("pastwave", false);
|
addGraphicCheckSetting("linkedMass", true, drawSeq);
|
||||||
addGraphicCheckSetting("emptywave", true);
|
addGraphicCheckSetting("linkedNode", false, drawSeq);
|
||||||
addGraphicSlideSetting("wavemax", 50, 0, 200, 1, s -> s + "waves");
|
addGraphicCheckSetting("select", true, drawSeq);
|
||||||
addGraphicCheckSetting("scan", false);
|
addGraphicCheckSetting("deadTarget", false, drawSeq);
|
||||||
addGraphicSlideSetting("rangemax", 10, 0, 100, 1, s -> s + "tiles");
|
addGraphicCheckSetting("distanceLine", true, drawSeq);
|
||||||
addGraphicCheckSetting("coreRange", false);
|
addGraphicSlideSetting("unitlinelimit", 50, 50, 250, 10, s -> s + "units", drawSeq);
|
||||||
addGraphicCheckSetting("rangeNearby", true);
|
|
||||||
addGraphicCheckSetting("allTeamRange", false);
|
|
||||||
addGraphicCheckSetting("allTargetRange", false);
|
|
||||||
addGraphicCheckSetting("unitRange", false);
|
|
||||||
addGraphicCheckSetting("softRangeDrawing", true);
|
|
||||||
addGraphicSlideSetting("softRangeOpacity", 10, 0, 25, 1, s -> s + "%");
|
|
||||||
addGraphicSlideSetting("rangeRadius", 15, 0, 20, 1, s -> s + "tiles");
|
|
||||||
addGraphicSlideSetting("selectopacity", 50, 0, 100, 5, s -> s + "%");
|
|
||||||
addGraphicSlideSetting("baropacity", 50, 0, 100, 5, s -> s + "%");
|
|
||||||
addGraphicSlideSetting("uiopacity", 50, 0, 100, 5, s -> s + "%");
|
|
||||||
|
|
||||||
addGraphicCheckSetting("autoShooting", false);
|
Seq<SharSetting> etcSeq = new Seq<>();
|
||||||
addGraphicCheckSetting("infoui", true);
|
addGraphicCheckSetting("autoShooting", false, etcSeq);
|
||||||
addGraphicCheckSetting("weaponui", true);
|
settingSeq.add(tapSeq, rangeSeq, opacitySeq);
|
||||||
addGraphicCheckSetting("select", true);
|
settingSeq.add(drawSeq, etcSeq);
|
||||||
addGraphicCheckSetting("unithealthui", true);
|
|
||||||
addGraphicCheckSetting("ssim", false);
|
sharset.table(t -> {
|
||||||
addGraphicCheckSetting("shar", false);
|
Seq<Button> buttons = new Seq<>();
|
||||||
addGraphicCheckSetting("shar1", false);
|
buttons.add(new TextButton(bundle.get("setting.shar-wave"), Styles.clearToggleMenut));
|
||||||
addGraphicCheckSetting("shar2", false);
|
buttons.add(new TextButton(bundle.get("setting.shar-range"), Styles.clearToggleMenut));
|
||||||
addGraphicCheckSetting("shar3", false);
|
buttons.add(new TextButton(bundle.get("setting.shar-opacity"), Styles.clearToggleMenut));
|
||||||
addGraphicCheckSetting("gaycursor", false);
|
buttons.add(new TextButton(bundle.get("setting.shar-draw"), Styles.clearToggleMenut));
|
||||||
addGraphicCheckSetting("allTeam", false);
|
buttons.add(new TextButton(bundle.get("setting.shar-etc"), Styles.clearToggleMenut));
|
||||||
addGraphicCheckSetting("deadTarget", false);
|
buttons.each(b -> b.clicked(() -> buttons.each(b1 -> b1.setChecked(b1 == b))));
|
||||||
addGraphicCheckSetting("linkedMass", true);
|
t.table(Styles.black8, bt -> {
|
||||||
addGraphicCheckSetting("linkedNode", false);
|
bt.top().align(Align.top);
|
||||||
addGraphicCheckSetting("distanceLine", true);
|
buttons.each(b -> {
|
||||||
|
bt.add(b).minHeight(60f).minWidth(150f).top();
|
||||||
|
});
|
||||||
|
}).grow().row();
|
||||||
|
|
||||||
|
Stack stack = new Stack();
|
||||||
|
for(int i = 0; i < settingSeq.size; i++){
|
||||||
|
int finalI = i;
|
||||||
|
stack.add(new Table(st -> {
|
||||||
|
st.center();
|
||||||
|
for(SharSetting setting : settingSeq.get(finalI)) {
|
||||||
|
Label label = new Label(setting.description);
|
||||||
|
label.setColor(Color.gray);
|
||||||
|
label.setFontScale(0.75f);
|
||||||
|
|
||||||
|
st.table(stt -> {
|
||||||
|
stt.center();
|
||||||
|
setting.add(stt);
|
||||||
|
stt.add(label);
|
||||||
|
}).row();
|
||||||
|
}
|
||||||
|
|
||||||
|
st.button(Core.bundle.get("settings.reset", "Reset to Defaults"), () -> {
|
||||||
|
for(SharSetting setting : settingSeq.get(finalI)) {
|
||||||
|
if(setting.name != null && setting.title != null) {
|
||||||
|
Core.settings.put(setting.name, Core.settings.getDefault(setting.name));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}).margin(14.0F).width(240.0F).pad(6.0F);
|
||||||
|
st.visibility = () -> buttons.get(finalI).isChecked();
|
||||||
|
st.pack();
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
t.add(stack);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
26
src/UnitInfo/core/SharSetting.java
Normal file
26
src/UnitInfo/core/SharSetting.java
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
package UnitInfo.core;
|
||||||
|
|
||||||
|
import arc.Core;
|
||||||
|
import arc.scene.ui.layout.Table;
|
||||||
|
import mindustry.ui.dialogs.SettingsMenuDialog;
|
||||||
|
|
||||||
|
public abstract class SharSetting extends SettingsMenuDialog.SettingsTable.Setting {
|
||||||
|
|
||||||
|
public SharSetting(String name) {
|
||||||
|
super(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public SharSetting(String name, Object def) {
|
||||||
|
this(name);
|
||||||
|
Core.settings.defaults(name, def);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void add(Table table) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void add(SettingsMenuDialog.SettingsTable table) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -54,11 +54,7 @@ public class SBar extends Element{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public SBar init(){
|
public SBar init(){
|
||||||
boolean ssim = Core.settings.getBool("ssim");
|
int h = Core.settings.getInt("barstyle");
|
||||||
boolean shar = Core.settings.getBool("shar");
|
|
||||||
boolean shar1 = Core.settings.getBool("shar1");
|
|
||||||
boolean shar2 = Core.settings.getBool("shar2");
|
|
||||||
boolean shar3 = Core.settings.getBool("shar3");
|
|
||||||
|
|
||||||
|
|
||||||
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barS"), 10, 10, 9, 9);
|
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barS"), 10, 10, 9, 9);
|
||||||
@@ -69,27 +65,27 @@ public class SBar extends Element{
|
|||||||
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-1dotbar-top"),0,0,0,0);
|
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-1dotbar-top"),0,0,0,0);
|
||||||
spriteWidth = Core.atlas.find("unitinfo-1dotbar").width;
|
spriteWidth = Core.atlas.find("unitinfo-1dotbar").width;
|
||||||
}
|
}
|
||||||
else if(ssim){
|
else if(h == 1){
|
||||||
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSS"), 14, 14, 19, 19);
|
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSS"), 14, 14, 19, 19);
|
||||||
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSS-top"), 14, 14, 19, 19);
|
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSS-top"), 14, 14, 19, 19);
|
||||||
spriteWidth = Core.atlas.find("unitinfo-barSS").width;
|
spriteWidth = Core.atlas.find("unitinfo-barSS").width;
|
||||||
}
|
}
|
||||||
else if(shar){
|
else if(h == 2){
|
||||||
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSS"), 25, 25, 17, 17);
|
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSS"), 25, 25, 17, 17);
|
||||||
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSS-top"), 25, 25, 17, 17);
|
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSS-top"), 25, 25, 17, 17);
|
||||||
spriteWidth = Core.atlas.find("unitinfo-barSSS").width;
|
spriteWidth = Core.atlas.find("unitinfo-barSSS").width;
|
||||||
}
|
}
|
||||||
else if(shar1){
|
else if(h == 3){
|
||||||
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSS"), 25, 25, 17, 17);
|
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSS"), 25, 25, 17, 17);
|
||||||
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSS-top"), 25, 25, 17, 17);
|
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSS-top"), 25, 25, 17, 17);
|
||||||
spriteWidth = Core.atlas.find("unitinfo-barSSSS").width;
|
spriteWidth = Core.atlas.find("unitinfo-barSSSS").width;
|
||||||
}
|
}
|
||||||
else if(shar2){
|
else if(h == 4){
|
||||||
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSS"), 27, 27, 16, 16);
|
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSS"), 27, 27, 16, 16);
|
||||||
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSS-top"), 27, 27, 16, 16);
|
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSS-top"), 27, 27, 16, 16);
|
||||||
spriteWidth = Core.atlas.find("unitinfo-barSSSSS").width;
|
spriteWidth = Core.atlas.find("unitinfo-barSSSSS").width;
|
||||||
}
|
}
|
||||||
else if(shar3){
|
else if(h == 5){
|
||||||
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSSS"), 32, 32, 16, 16);
|
bar = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSSS"), 32, 32, 16, 16);
|
||||||
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSSS-top"), 32, 32, 16, 16);
|
top = (NinePatchDrawable) SUtils.getDrawable(Core.atlas.find("unitinfo-barSSSSSS-top"), 32, 32, 16, 16);
|
||||||
spriteWidth = Core.atlas.find("unitinfo-barSSSSSS").width;
|
spriteWidth = Core.atlas.find("unitinfo-barSSSSSS").width;
|
||||||
|
|||||||
Reference in New Issue
Block a user