Merge branch 'master' of https://github.com/Anuken/Mindustry into v117
This commit is contained in:
55
core/assets-raw/fontgen/extra/planet.svg
Normal file
55
core/assets-raw/fontgen/extra/planet.svg
Normal file
@@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="16"
|
||||
height="16"
|
||||
version="1.1"
|
||||
id="svg542"
|
||||
sodipodi:docname="planet.svg"
|
||||
inkscape:version="1.0.1 (0767f8302a, 2020-10-17)">
|
||||
<metadata
|
||||
id="metadata548">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs546" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="2560"
|
||||
inkscape:window-height="1316"
|
||||
id="namedview544"
|
||||
showgrid="false"
|
||||
inkscape:pagecheckerboard="true"
|
||||
inkscape:zoom="15.75"
|
||||
inkscape:cx="-16.385458"
|
||||
inkscape:cy="16.16535"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="27"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg542" />
|
||||
<path
|
||||
id="polygon2"
|
||||
style="fill:#ffffff"
|
||||
d="M 5.5 0 L 5 0.5 L 4.5 1 L 3.5 1 L 3 1.5 L 2.5 2 L 2 2.5 L 1.5 3 L 1 3.5 L 1 4.5 L 0.5 5 L 0 5.5 L 0 6.5 L 0 7.5 L 0 8.5 L 0 9.5 L 0 10.5 L 0.5 11 L 1 11.5 L 1 12.5 L 1.5 13 L 2 13.5 L 2.5 14 L 3 14.5 L 3.5 15 L 4.5 15 L 5 15.5 L 5.5 16 L 6.5 16 L 7.5 16 L 8.5 16 L 9.5 16 L 10.5 16 L 11 15.5 L 11.5 15 L 12.5 15 L 13 14.5 L 13.5 14 L 14 13.5 L 14.5 13 L 15 12.5 L 15 11.5 L 15.5 11 L 16 10.5 L 16 9.5 L 16 8.5 L 16 7.5 L 16 6.5 L 16 5.5 L 15.5 5 L 15 4.5 L 15 3.5 L 14.5 3 L 14 2.5 L 13.5 2 L 13 1.5 L 12.5 1 L 11.5 1 L 11 0.5 L 10.5 0 L 9.5 0 L 8.5 0 L 7.5 0 L 6.5 0 L 5.5 0 z M 6.5 1 L 7 1.5 L 7.5 2 L 8.5 2 L 9 2.5 L 9 3.5 L 9.5 4 L 10 4.5 L 10.5 5 L 11 5.5 L 11.5 6 L 12.5 6 L 13.5 6 L 14.5 6 L 15 6.5 L 15 7.5 L 15 8.5 L 15 9.5 L 14.5 10 L 14 10.5 L 14 11.5 L 13.5 12 L 13 12.5 L 12.5 13 L 12 13.5 L 11.5 14 L 10.5 14 L 10 14.5 L 9.5 15 L 8.5 15 L 8 14.5 L 7.5 14 L 7 13.5 L 7 12.5 L 7.5 12 L 8 11.5 L 8.5 11 L 9 10.5 L 9 9.5 L 9 8.5 L 8.5 8 L 8 7.5 L 7.5 7 L 6.5 7 L 5.5 7 L 4.5 7 L 4 7.5 L 3.5 8 L 3 8.5 L 2.5 9 L 2 9.5 L 1.5 10 L 1 9.5 L 1 8.5 L 1 7.5 L 1 6.5 L 1.5 6 L 2 5.5 L 2 4.5 L 2.5 4 L 3 3.5 L 3.5 3 L 4 2.5 L 4.5 2 L 5.5 2 L 6 1.5 L 6.5 1 z M 11.5 9 L 11 9.5 L 11 10.5 L 11.5 11 L 12.5 11 L 13 10.5 L 13 9.5 L 12.5 9 L 11.5 9 z " />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.7 KiB |
BIN
core/assets-raw/icons/planet.png
Normal file
BIN
core/assets-raw/icons/planet.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 578 B |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,2 +1,3 @@
|
||||
mschxœ-‹k
|
||||
1„ÇMÅîуôPÅ
|
||||
mschxњ-Ќ‹
|
||||
В0EoЧКєўТЏЄ®И ¶Ґ«Ёџ.CfІJ‡<N‚З*Ш»Г<C2BB>lцЮѕ–иmЖ0№ељзTжЂN)>]6!NОРьж0,‚)Ь‡&ЩІЌцbKqщЌу~И$њя+А‘Vh¶•т№} ¶U
|
||||
кwZР'И;¤$ґ]СUфґ…]P,(І»Љ‘ЎkҐ№ъЕ¶,e
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -19,8 +19,8 @@ screenshot.invalid = 맵이 너무 커서 스크린샷에 사용될 메모리가
|
||||
gameover = 게임 오버
|
||||
gameover.pvp = [accent]{0}[] 팀이 승리했습니다!
|
||||
highscore = [accent]새로운 최고 점수!
|
||||
copied = 복사됨.
|
||||
indev.popup = 현재 [accent]v6[] 버전은 [accent]알파[] 단계입니다.\n[lightgray]이 말은:[]\n- [scarlet]캠페인이 아직 완전히 개발되지 않음[]\n- 몇몇 컨텐츠가 빠짐\n- 대부분의 [scarlet]유닛 AI[]가 작동하지 않음\n- 많은 유닛들이 아직 미완성\n- 보이는 것은 모두 바뀌거나 제거될 수 있음\n\n[accent]Github[] 에서 버그 또는 강제종료 오류를 신고 해 주세요.
|
||||
copied = 복사
|
||||
indev.popup = 현재 [accent]v6[] 버전은 [accent]베타[] 단계입니다.\n\n[accent]Github[] 에서 버그 또는 강제종료 오류를 신고 해 주세요.
|
||||
indev.notready = 이 부분은 아직 준비가 되지 않았습니다.
|
||||
|
||||
load.sound = 소리
|
||||
@@ -71,15 +71,15 @@ map.delete = 정말로 "[accent]{0}[]" 맵을 삭제하시겠습니까?
|
||||
level.highscore = 최고 점수: [accent]{0}
|
||||
level.select = 맵 선택
|
||||
level.mode = 게임 모드:
|
||||
coreattack = < 코어가 공격 받고 있습니다! >
|
||||
nearpoint = [[ [scarlet]즉시 스폰지점에서 떠나세요[] ]\n전멸 임박
|
||||
coreattack = < 코어가 공격을 받고 있습니다! >
|
||||
nearpoint = [[ [scarlet]즉시 스폰지점에서 떠나세요[] ]\n인근 건물들과 유닛들은 초토화됩니다!
|
||||
database = 코어 데이터베이스
|
||||
savegame = 게임 저장
|
||||
loadgame = 게임 불러오기
|
||||
joingame = 게임 참여
|
||||
customgame = 사용자 지정 게임
|
||||
newgame = 새 게임
|
||||
none = <없음>
|
||||
none = < 없음 >
|
||||
minimap = 미니맵
|
||||
position = 위치
|
||||
close = 닫기
|
||||
@@ -291,8 +291,8 @@ waiting = [lightgray]대기중...
|
||||
waiting.players = 상대 플레이어를 기다리는 중...
|
||||
wave.enemies = [lightgray]적 유닛 {0}명 남음
|
||||
wave.enemy = [lightgray]{0}명 남음
|
||||
wave.guardianwarn = [accent]{0}[] 단계 후에 가디언이 접근합니다.
|
||||
wave.guardianwarn.one = [accent]{0}[] 단계 후에 가디언이 접근합니다.
|
||||
wave.guardianwarn = [accent]{0}[] 단계 후에 수호자가 접근합니다.
|
||||
wave.guardianwarn.one = [accent]{0}[] 단계 후에 수호자가 접근합니다.
|
||||
loadimage = 사진 불러오기
|
||||
saveimage = 사진 저장
|
||||
unknown = 알 수 없음
|
||||
@@ -335,13 +335,13 @@ editor.center = 중앙
|
||||
workshop = 창작마당
|
||||
waves.title = 단계
|
||||
waves.remove = 삭제
|
||||
waves.never = 여기까지 유닛생성
|
||||
waves.never = 여기까지 유닛 생성
|
||||
waves.every = 매
|
||||
waves.waves = 단계마다
|
||||
waves.perspawn = 마리 생성
|
||||
waves.shields = 보호막/단계
|
||||
waves.shields = 방어막/단계
|
||||
waves.to = 부터
|
||||
waves.guardian = 가디언
|
||||
waves.guardian = 수호자
|
||||
waves.preview = 미리보기
|
||||
waves.edit = 편집
|
||||
waves.copy = 클립보드로 복사
|
||||
@@ -495,7 +495,7 @@ zone.objective = [lightgray]목표: [accent]{0}
|
||||
zone.objective.survival = 생존
|
||||
zone.objective.attack = 적 코어 파괴
|
||||
add = 추가...
|
||||
boss.health = 보스 체력
|
||||
boss.health = 수호자 체력
|
||||
|
||||
connectfail = [scarlet]연결 오류:\n\n[accent]{0}
|
||||
error.unreachable = 서버에 연결하지 못했습니다.\n서버 주소가 정확히 입력되었나요?
|
||||
@@ -522,11 +522,11 @@ sectors.resume = 재개
|
||||
sectors.launch = 출격
|
||||
sectors.select = 선택
|
||||
sectors.nonelaunch = [lightgray]없음 (sun)
|
||||
sectors.rename = Rename Sector
|
||||
sector.missingresources = [scarlet]Insufficient Core Resources
|
||||
sectors.rename = 구역 명명
|
||||
sector.missingresources = [scarlet]자원 부족
|
||||
|
||||
planet.serpulo.name = Serpulo
|
||||
planet.sun.name = Sun
|
||||
planet.serpulo.name = 세르플
|
||||
planet.sun.name = 태양
|
||||
|
||||
sector.groundZero.name = 전초기지
|
||||
sector.craters.name = 크레이터
|
||||
@@ -561,26 +561,26 @@ settings.controls = 조작
|
||||
settings.game = 게임
|
||||
settings.sound = 소리
|
||||
settings.graphics = 그래픽
|
||||
settings.cleardata = 게임 데이터 초기화...
|
||||
settings.clear.confirm = 정말로 이 데이터를 지우시겠습니까?\n완료된 작업은 취소할 수 없습니다!
|
||||
settings.cleardata = 게임 데이터 초기화
|
||||
settings.clear.confirm = 정말로 이 데이터를 지우시겠습니까?\n되돌릴 수 없습니다!
|
||||
settings.clearall.confirm = [scarlet]경고![]\n이 작업은 저장된 맵, 맵파일, 잠금 해제된 목록과 키 매핑, 그리고 모든 데이터를 삭제합니다.\n확인 버튼을 다시 눌러 모든 데이터를 삭제하고 게임에서 나갑니다.
|
||||
settings.clearsaves.confirm = 정말로 모든 저장을 삭제 하시겠습니까?
|
||||
settings.clearsaves.confirm = 정말로 모든 저장된 파일들을 삭제하시겠습니까?
|
||||
settings.clearsaves = 저장 초기화
|
||||
settings.clearresearch = Clear Research
|
||||
settings.clearresearch.confirm = Are you sure you want to clear all of your campaign research?
|
||||
settings.clearcampaignsaves = Clear Campaign Saves
|
||||
settings.clearcampaignsaves.confirm = Are you sure you want to clear all of your campaign saves?
|
||||
settings.clearresearch = 연구 초기화
|
||||
settings.clearresearch.confirm = 정말로 모든 연구를 삭제하시겠습니까?
|
||||
settings.clearcampaignsaves = 캠페인 맵 초기화
|
||||
settings.clearcampaignsaves.confirm = 정말로 캠페인을 초기화하시겠습니까?
|
||||
paused = [accent]< 일시정지 >
|
||||
clear = 초기화
|
||||
banned = [scarlet]차단됨
|
||||
unplaceable.sectorcaptured = [scarlet]점령된 구역이 필요합니다
|
||||
unplaceable.sectorcaptured = [scarlet]구역 점령 필요
|
||||
yes = 예
|
||||
no = 아니오
|
||||
info.title = 정보
|
||||
error.title = [scarlet]오류가 발생했습니다.
|
||||
error.crashtitle = 오류가 발생했습니다
|
||||
unit.nobuild = [scarlet]이 유닛은 건설할 수 없습니다.
|
||||
lastaccessed = [lightgray]마지막 접근: {0}
|
||||
unit.nobuild = [scarlet]건설 불가
|
||||
lastaccessed = [lightgray]마지막 조작: {0}
|
||||
block.unknown = [lightgray]???
|
||||
|
||||
stat.input = 입력
|
||||
@@ -588,70 +588,70 @@ stat.output = 출력
|
||||
stat.booster = 가속
|
||||
stat.tiles = 필요한 타일
|
||||
stat.affinities = 친화력
|
||||
stat.powercapacity = Power Capacity
|
||||
stat.powershot = Power/Shot
|
||||
stat.damage = Damage
|
||||
stat.targetsair = Targets Air
|
||||
stat.targetsground = Targets Ground
|
||||
stat.itemsmoved = Move Speed
|
||||
stat.launchtime = Time Between Launches
|
||||
stat.shootrange = Range
|
||||
stat.size = Size
|
||||
stat.displaysize = Display Size
|
||||
stat.liquidcapacity = Liquid Capacity
|
||||
stat.powerrange = Power Range
|
||||
stat.linkrange = Link Range
|
||||
stat.instructions = Instructions
|
||||
stat.powerconnections = Max Connections
|
||||
stat.poweruse = Power Use
|
||||
stat.powerdamage = Power/Damage
|
||||
stat.itemcapacity = Item Capacity
|
||||
stat.memorycapacity = Memory Capacity
|
||||
stat.basepowergeneration = Base Power Generation
|
||||
stat.productiontime = Production Time
|
||||
stat.repairtime = Block Full Repair Time
|
||||
stat.speedincrease = Speed Increase
|
||||
stat.range = Range
|
||||
stat.drilltier = Drillables
|
||||
stat.drillspeed = Base Drill Speed
|
||||
stat.boosteffect = Boost Effect
|
||||
stat.maxunits = Max Active Units
|
||||
stat.health = Health
|
||||
stat.buildtime = Build Time
|
||||
stat.maxconsecutive = Max Consecutive
|
||||
stat.buildcost = Build Cost
|
||||
stat.inaccuracy = Inaccuracy
|
||||
stat.shots = Shots
|
||||
stat.reload = Shots/Second
|
||||
stat.ammo = Ammo
|
||||
stat.shieldhealth = Shield Health
|
||||
stat.cooldowntime = Cooldown Time
|
||||
stat.explosiveness = Explosiveness
|
||||
stat.basedeflectchance = Base Deflect Chance
|
||||
stat.lightningchance = Lightning Chance
|
||||
stat.lightningdamage = Lightning Damage
|
||||
stat.flammability = Flammability
|
||||
stat.radioactivity = Radioactivity
|
||||
stat.heatcapacity = HeatCapacity
|
||||
stat.viscosity = Viscosity
|
||||
stat.temperature = Temperature
|
||||
stat.speed = Speed
|
||||
stat.buildspeed = Build Speed
|
||||
stat.minespeed = Mine Speed
|
||||
stat.minetier = Mine Tier
|
||||
stat.payloadcapacity = Payload Capacity
|
||||
stat.commandlimit = Command Limit
|
||||
stat.abilities = Abilities
|
||||
stat.powercapacity = 전력량
|
||||
stat.powershot = 전력량/발
|
||||
stat.damage = 공격력
|
||||
stat.targetsair = 공중 공격
|
||||
stat.targetsground = 지상 공격
|
||||
stat.itemsmoved = 이동 속도
|
||||
stat.launchtime = 발사 간격
|
||||
stat.shootrange = 사거리
|
||||
stat.size = 크기
|
||||
stat.displaysize = 화면 크기
|
||||
stat.liquidcapacity = 액체 수용량
|
||||
stat.powerrange = 전선 길이
|
||||
stat.linkrange = 감지 길이
|
||||
stat.instructions = 최대 명령어 수
|
||||
stat.powerconnections = 최대 연결 개수
|
||||
stat.poweruse = 전력 요구량
|
||||
stat.powerdamage = 전력량/피해량
|
||||
stat.itemcapacity = 자원 수용량
|
||||
stat.memorycapacity = 변수 개수
|
||||
stat.basepowergeneration = 기본 발전량
|
||||
stat.productiontime = 소요 시간
|
||||
stat.repairtime = 건물 완전 복구 시간
|
||||
stat.speedincrease = 속도 증가
|
||||
stat.range = 사거리
|
||||
stat.drilltier = 채굴 가능 자원
|
||||
stat.drillspeed = 기본 채굴 속도
|
||||
stat.boosteffect = 버프 효과
|
||||
stat.maxunits = 최대 유닛 수
|
||||
stat.health = 체력
|
||||
stat.buildtime = 건설 시간
|
||||
stat.maxconsecutive = 최대 체인 길이
|
||||
stat.buildcost = 건설 비용
|
||||
stat.inaccuracy = 오차각
|
||||
stat.shots = 발사 당 탄
|
||||
stat.reload = 발/초
|
||||
stat.ammo = 탄약
|
||||
stat.shieldhealth = 보호막 체력
|
||||
stat.cooldowntime = 쿨타임
|
||||
stat.explosiveness = 폭발성
|
||||
stat.basedeflectchance = 기본 반사 확률
|
||||
stat.lightningchance = 전격 확률
|
||||
stat.lightningdamage = 전격 공격량
|
||||
stat.flammability = 휘발성
|
||||
stat.radioactivity = 방사성
|
||||
stat.heatcapacity = 열용량
|
||||
stat.viscosity = 점성
|
||||
stat.temperature = 온도
|
||||
stat.speed = 속도
|
||||
stat.buildspeed = 건설 속도
|
||||
stat.minespeed = 채굴 속도
|
||||
stat.minetier = 채굴 티어
|
||||
stat.payloadcapacity = 화물 수용량
|
||||
stat.commandlimit = 지휘 한계
|
||||
stat.abilities = 능력
|
||||
|
||||
ability.forcefield = Force Field
|
||||
ability.repairfield = Repair Field
|
||||
ability.statusfield = Status Field
|
||||
ability.unitspawn = {0} Factory
|
||||
ability.shieldregenfield = Shield Regen Field
|
||||
ability.forcefield = 보호막
|
||||
ability.repairfield = 수리장
|
||||
ability.statusfield = 버프장
|
||||
ability.unitspawn = {0} 공장
|
||||
ability.shieldregenfield = 방어막 복구장
|
||||
|
||||
bar.drilltierreq = 더 좋은 드릴이 필요
|
||||
bar.noresources = 자원 부족
|
||||
bar.corereq = 코어 기지 필요
|
||||
bar.corereq = 코어 필요
|
||||
bar.drillspeed = 드릴 속도: {0}/s
|
||||
bar.pumpspeed = 펌프 속도: {0}/s
|
||||
bar.efficiency = 효율: {0}%
|
||||
@@ -688,7 +688,7 @@ bullet.multiplier = [stat]{0}[lightgray]x 탄약 배수
|
||||
bullet.reload = [stat]{0}[lightgray]x 발사 속도
|
||||
|
||||
unit.blocks = 블록
|
||||
unit.blockssquared = blocks²
|
||||
unit.blockssquared = 블록²
|
||||
unit.powersecond = 전력/초
|
||||
unit.liquidsecond = 액체/초
|
||||
unit.itemssecond = 개/초
|
||||
@@ -701,7 +701,7 @@ unit.persecond = /초
|
||||
unit.perminute = /분
|
||||
unit.timesspeed = x 배
|
||||
unit.percent = %
|
||||
unit.shieldhealth = 보호막 체력
|
||||
unit.shieldhealth = 방어막 체력
|
||||
unit.items = 자원
|
||||
unit.thousands = 천
|
||||
unit.millions = 백만
|
||||
@@ -711,7 +711,7 @@ category.power = 전력
|
||||
category.liquids = 액체
|
||||
category.items = 자원
|
||||
category.crafting = 입력/출력
|
||||
category.function = Function
|
||||
category.function = 기능
|
||||
category.optional = 보조 자원
|
||||
setting.landscape.name = 가로화면 잠금
|
||||
setting.shadows.name = 그림자
|
||||
@@ -722,7 +722,7 @@ setting.flow.name = 자원 흐름량 표시
|
||||
setting.buildautopause.name = 건설 자동 일시정지
|
||||
setting.animatedwater.name = 액체 애니메이션 효과
|
||||
setting.animatedshields.name = 보호막 애니메이션 효과
|
||||
setting.antialias.name = 안티 에일리어싱[lightgray] (재시작 필요)[]
|
||||
setting.antialias.name = 위신호 제거 필터[lightgray] (재시작 필요)[]
|
||||
setting.playerindicators.name = 플레이어 위치 표시기
|
||||
setting.indicators.name = 적 위치 표시기
|
||||
setting.autotarget.name = 자동 조준
|
||||
@@ -734,10 +734,10 @@ setting.fpscap.text = {0} FPS
|
||||
setting.uiscale.name = UI 스케일링[lightgray] (재시작 필요)[]
|
||||
setting.swapdiagonal.name = 항상 대각선 배치
|
||||
setting.difficulty.training = 훈련
|
||||
setting.difficulty.easy = 쉬움
|
||||
setting.difficulty.easy = 무난
|
||||
setting.difficulty.normal = 보통
|
||||
setting.difficulty.hard = 어려움
|
||||
setting.difficulty.insane = 미침
|
||||
setting.difficulty.hard = 혼돈
|
||||
setting.difficulty.insane = 박멸
|
||||
setting.difficulty.name = 난이도:
|
||||
setting.screenshake.name = 화면 흔들림
|
||||
setting.effects.name = 효과 보임
|
||||
@@ -769,7 +769,7 @@ setting.savecreate.name = 자동 저장 활성화
|
||||
setting.publichost.name = 멀티플레이 공용 서버로 표시
|
||||
setting.playerlimit.name = 플레이어 제한
|
||||
setting.chatopacity.name = 채팅창 투명도
|
||||
setting.lasersopacity.name = 전력 레이저 투명도
|
||||
setting.lasersopacity.name = 전선 투명도
|
||||
setting.bridgeopacity.name = 터널 투명도
|
||||
setting.playerchat.name = 채팅 말풍선 표시
|
||||
public.confirm = 게임을 모두에게 공개하시겠습니까?\n[accent]모든 플레이어가 게임에 참여할 수 있습니다.\n[lightgray]설정->게임->멀티플레이 공용 서버로 표시에서 나중에 변경할 수 있습니다.\n\n[sky]번역자 추가[]\n[accent]친구끼리 하려고 이 기능을 활성화 한 뒤에, 친구 외에 다른 플레이어가 들어왔을 때\n해당 플레이어를 차단하는 행위는 비매너를 넘어서는 얌체 행위 그 자체입니다.\n정말로 [scarlet]많은 다른 플레이어들이 오길 원한다[]면 확인하세요.
|
||||
@@ -794,8 +794,8 @@ keybind.clear_building.name = 설계도 초기화
|
||||
keybind.press = 키를 누르세요...
|
||||
keybind.press.axis = 마우스 휠 또는 키를 누르세요...
|
||||
keybind.screenshot.name = 맵 스크린샷
|
||||
keybind.toggle_power_lines.name = 전력 레이저 토글
|
||||
keybind.toggle_block_status.name = 블록 상태 토글
|
||||
keybind.toggle_power_lines.name = 전선 가시도 설정
|
||||
keybind.toggle_block_status.name = 블록 상태 가시도
|
||||
keybind.move_x.name = X축 이동
|
||||
keybind.move_y.name = Y축 이동
|
||||
keybind.mouse_move.name = 커서를 따라서 이동
|
||||
|
||||
@@ -14,8 +14,6 @@ import mindustry.world.blocks.*;
|
||||
import mindustry.world.blocks.campaign.*;
|
||||
import mindustry.world.blocks.defense.*;
|
||||
import mindustry.world.blocks.defense.turrets.*;
|
||||
import mindustry.world.blocks.defense.turrets.PointDefenseTurret;
|
||||
import mindustry.world.blocks.defense.turrets.TractorBeamTurret;
|
||||
import mindustry.world.blocks.distribution.*;
|
||||
import mindustry.world.blocks.environment.*;
|
||||
import mindustry.world.blocks.experimental.*;
|
||||
@@ -1221,13 +1219,13 @@ public class Blocks implements ContentList{
|
||||
|
||||
solarPanel = new SolarGenerator("solar-panel"){{
|
||||
requirements(Category.power, with(Items.lead, 10, Items.silicon, 15));
|
||||
powerProduction = 0.08f;
|
||||
powerProduction = 0.1f;
|
||||
}};
|
||||
|
||||
largeSolarPanel = new SolarGenerator("solar-panel-large"){{
|
||||
requirements(Category.power, with(Items.lead, 100, Items.silicon, 145, Items.phaseFabric, 15));
|
||||
requirements(Category.power, with(Items.lead, 80, Items.silicon, 110, Items.phaseFabric, 15));
|
||||
size = 3;
|
||||
powerProduction = 1f;
|
||||
powerProduction = 1.3f;
|
||||
}};
|
||||
|
||||
thoriumReactor = new NuclearReactor("thorium-reactor"){{
|
||||
@@ -1515,7 +1513,7 @@ public class Blocks implements ContentList{
|
||||
flags = EnumSet.of(BlockFlag.turret, BlockFlag.extinguisher);
|
||||
}};
|
||||
|
||||
lancer = new ChargeTurret("lancer"){{
|
||||
lancer = new PowerTurret("lancer"){{
|
||||
requirements(Category.turret, with(Items.copper, 25, Items.lead, 50, Items.silicon, 45));
|
||||
range = 165f;
|
||||
chargeTime = 40f;
|
||||
|
||||
@@ -512,8 +512,7 @@ public class TechTree implements ContentList{
|
||||
new Research(groundFactory),
|
||||
new Research(additiveReconstructor),
|
||||
new Research(airFactory),
|
||||
new Research(door),
|
||||
new Research(waterExtractor)
|
||||
new Research(door)
|
||||
), () -> {
|
||||
|
||||
});
|
||||
|
||||
@@ -41,7 +41,7 @@ public class NetClient implements ApplicationListener{
|
||||
private boolean connecting = false;
|
||||
/** If true, no message will be shown on disconnect. */
|
||||
private boolean quiet = false;
|
||||
/** Whether to supress disconnect events completely.*/
|
||||
/** Whether to suppress disconnect events completely.*/
|
||||
private boolean quietReset = false;
|
||||
/** Counter for data timeout. */
|
||||
private float timeoutTime = 0f;
|
||||
@@ -345,7 +345,7 @@ public class NetClient implements ApplicationListener{
|
||||
|
||||
ui.showInfoToast(message, duration);
|
||||
}
|
||||
|
||||
|
||||
@Remote(variants = Variant.both)
|
||||
public static void warningToast(int unicode, String text){
|
||||
if(text == null || Fonts.icon.getData().getGlyph((char)unicode) == null) return;
|
||||
|
||||
@@ -422,7 +422,7 @@ public class NetServer implements ApplicationListener{
|
||||
currentlyKicking[0] = session;
|
||||
}
|
||||
}else{
|
||||
player.sendMessage("[scarlet]No player[orange]'" + args[0] + "'[scarlet] found.");
|
||||
player.sendMessage("[scarlet]No player [orange]'" + args[0] + "'[scarlet] found.");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -31,7 +31,7 @@ public abstract class Content implements Comparable<Content>, Disposable{
|
||||
*/
|
||||
public void load(){}
|
||||
|
||||
/** @return whether an error ocurred during mod loading. */
|
||||
/** @return whether an error occurred during mod loading. */
|
||||
public boolean hasErrored(){
|
||||
return minfo.error != null;
|
||||
}
|
||||
|
||||
@@ -110,7 +110,7 @@ public abstract class UnlockableContent extends MappableContent{
|
||||
|
||||
/** Makes this piece of content unlocked; if it already unlocked, nothing happens. */
|
||||
public void unlock(){
|
||||
if(!unlocked()){
|
||||
if(!net.client() && !unlocked()){
|
||||
unlocked = true;
|
||||
Core.settings.put(name + "-unlocked", true);
|
||||
|
||||
|
||||
@@ -677,7 +677,7 @@ public class Mods implements Loadable{
|
||||
public Seq<String> missingDependencies = new Seq<>();
|
||||
/** Script files to run. */
|
||||
public Seq<Fi> scripts = new Seq<>();
|
||||
/** Content with intialization code. */
|
||||
/** Content with initialization code. */
|
||||
public ObjectSet<Content> erroredContent = new ObjectSet<>();
|
||||
/** Current state of this mod. */
|
||||
public ModState state = ModState.enabled;
|
||||
@@ -708,7 +708,7 @@ public class Mods implements Loadable{
|
||||
return !erroredContent.isEmpty();
|
||||
}
|
||||
|
||||
/** @return whether this mod is supported by the game verison */
|
||||
/** @return whether this mod is supported by the game version */
|
||||
public boolean isSupported(){
|
||||
if(isOutdated()) return false;
|
||||
|
||||
|
||||
@@ -48,6 +48,7 @@ public class ForceProjector extends Block{
|
||||
super(name);
|
||||
update = true;
|
||||
solid = true;
|
||||
group = BlockGroup.projectors;
|
||||
hasPower = true;
|
||||
hasLiquids = true;
|
||||
hasItems = true;
|
||||
|
||||
@@ -31,6 +31,7 @@ public class MendProjector extends Block{
|
||||
super(name);
|
||||
solid = true;
|
||||
update = true;
|
||||
group = BlockGroup.projectors;
|
||||
hasPower = true;
|
||||
hasItems = true;
|
||||
}
|
||||
|
||||
@@ -32,6 +32,7 @@ public class OverdriveProjector extends Block{
|
||||
super(name);
|
||||
solid = true;
|
||||
update = true;
|
||||
group = BlockGroup.projectors;
|
||||
hasPower = true;
|
||||
hasItems = true;
|
||||
canOverdrive = false;
|
||||
|
||||
@@ -1,63 +0,0 @@
|
||||
package mindustry.world.blocks.defense.turrets;
|
||||
|
||||
import arc.audio.*;
|
||||
import arc.math.*;
|
||||
import arc.util.*;
|
||||
import mindustry.content.*;
|
||||
import mindustry.entities.*;
|
||||
import mindustry.entities.bullet.*;
|
||||
import mindustry.type.*;
|
||||
import mindustry.gen.*;
|
||||
|
||||
import static mindustry.Vars.*;
|
||||
|
||||
public class ChargeTurret extends PowerTurret{
|
||||
public float chargeTime = 30f;
|
||||
public int chargeEffects = 5;
|
||||
public float chargeMaxDelay = 10f;
|
||||
public Effect chargeEffect = Fx.none;
|
||||
public Effect chargeBeginEffect = Fx.none;
|
||||
public Sound chargeSound = Sounds.none;
|
||||
|
||||
public ChargeTurret(String name){
|
||||
super(name);
|
||||
}
|
||||
|
||||
public class ChargeTurretBuild extends PowerTurretBuild{
|
||||
public boolean shooting;
|
||||
|
||||
@Override
|
||||
public void shoot(BulletType ammo){
|
||||
useAmmo();
|
||||
|
||||
tr.trns(rotation, size * tilesize / 2f);
|
||||
chargeBeginEffect.at(x + tr.x, y + tr.y, rotation);
|
||||
chargeSound.at(x + tr.x, y + tr.y, 1);
|
||||
|
||||
for(int i = 0; i < chargeEffects; i++){
|
||||
Time.run(Mathf.random(chargeMaxDelay), () -> {
|
||||
if(!isValid()) return;
|
||||
tr.trns(rotation, size * tilesize / 2f);
|
||||
chargeEffect.at(x + tr.x, y + tr.y, rotation);
|
||||
});
|
||||
}
|
||||
|
||||
shooting = true;
|
||||
|
||||
Time.run(chargeTime, () -> {
|
||||
if(!isValid()) return;
|
||||
tr.trns(rotation, size * tilesize / 2f);
|
||||
recoil = recoilAmount;
|
||||
heat = 1f;
|
||||
bullet(ammo, rotation + Mathf.range(inaccuracy));
|
||||
effects();
|
||||
shooting = false;
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean shouldTurn(){
|
||||
return !shooting;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -40,6 +40,7 @@ public abstract class Turret extends ReloadTurret{
|
||||
public Effect ammoUseEffect = Fx.none;
|
||||
public Sound shootSound = Sounds.shoot;
|
||||
|
||||
//general info
|
||||
public int maxAmmo = 30;
|
||||
public int ammoPerShot = 1;
|
||||
public float ammoEjectBack = 1f;
|
||||
@@ -61,6 +62,14 @@ public abstract class Turret extends ReloadTurret{
|
||||
public boolean targetAir = true;
|
||||
public boolean targetGround = true;
|
||||
|
||||
//charging
|
||||
public float chargeTime = -1f;
|
||||
public int chargeEffects = 5;
|
||||
public float chargeMaxDelay = 10f;
|
||||
public Effect chargeEffect = Fx.none;
|
||||
public Effect chargeBeginEffect = Fx.none;
|
||||
public Sound chargeSound = Sounds.none;
|
||||
|
||||
public Sortf unitSort = Unit::dst2;
|
||||
|
||||
protected Vec2 tr = new Vec2();
|
||||
@@ -136,7 +145,7 @@ public abstract class Turret extends ReloadTurret{
|
||||
public @Nullable Posc target;
|
||||
public Vec2 targetPos = new Vec2();
|
||||
public BlockUnitc unit = Nulls.blockUnit;
|
||||
public boolean wasShooting;
|
||||
public boolean wasShooting, charging;
|
||||
|
||||
@Override
|
||||
public void created(){
|
||||
@@ -313,7 +322,7 @@ public abstract class Turret extends ReloadTurret{
|
||||
}
|
||||
|
||||
public boolean shouldTurn(){
|
||||
return true;
|
||||
return !charging;
|
||||
}
|
||||
|
||||
/** Consume ammo and return a type. */
|
||||
@@ -352,11 +361,37 @@ public abstract class Turret extends ReloadTurret{
|
||||
}
|
||||
|
||||
protected void shoot(BulletType type){
|
||||
recoil = recoilAmount;
|
||||
heat = 1f;
|
||||
|
||||
//when burst spacing is enabled, use the burst pattern
|
||||
if(burstSpacing > 0.0001f){
|
||||
//when charging is enabled, use the charge shoot pattern
|
||||
if(chargeTime > 0){
|
||||
useAmmo();
|
||||
|
||||
tr.trns(rotation, size * tilesize / 2f);
|
||||
chargeBeginEffect.at(x + tr.x, y + tr.y, rotation);
|
||||
chargeSound.at(x + tr.x, y + tr.y, 1);
|
||||
|
||||
for(int i = 0; i < chargeEffects; i++){
|
||||
Time.run(Mathf.random(chargeMaxDelay), () -> {
|
||||
if(!isValid()) return;
|
||||
tr.trns(rotation, size * tilesize / 2f);
|
||||
chargeEffect.at(x + tr.x, y + tr.y, rotation);
|
||||
});
|
||||
}
|
||||
|
||||
charging = true;
|
||||
|
||||
Time.run(chargeTime, () -> {
|
||||
if(!isValid()) return;
|
||||
tr.trns(rotation, size * tilesize / 2f);
|
||||
recoil = recoilAmount;
|
||||
heat = 1f;
|
||||
bullet(type, rotation + Mathf.range(inaccuracy));
|
||||
effects();
|
||||
charging = false;
|
||||
});
|
||||
|
||||
//when burst spacing is enabled, use the burst pattern
|
||||
}else if(burstSpacing > 0.0001f){
|
||||
for(int i = 0; i < shots; i++){
|
||||
Time.run(burstSpacing * i, () -> {
|
||||
if(!isValid() || !hasAmmo()) return;
|
||||
@@ -367,6 +402,8 @@ public abstract class Turret extends ReloadTurret{
|
||||
bullet(type, rotation + Mathf.range(inaccuracy));
|
||||
effects();
|
||||
useAmmo();
|
||||
recoil = recoilAmount;
|
||||
heat = 1f;
|
||||
});
|
||||
}
|
||||
|
||||
@@ -388,6 +425,8 @@ public abstract class Turret extends ReloadTurret{
|
||||
|
||||
shotCounter++;
|
||||
|
||||
recoil = recoilAmount;
|
||||
heat = 1f;
|
||||
effects();
|
||||
useAmmo();
|
||||
}
|
||||
|
||||
@@ -178,7 +178,6 @@ public class StackConveyor extends Block implements Autotiler{
|
||||
}
|
||||
proxUpdating = false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
package mindustry.world.meta;
|
||||
|
||||
public enum BlockGroup{
|
||||
none, walls, turrets, transportation, power, liquids, drills, storage, units, logic
|
||||
none, walls, projectors, turrets, transportation, power, liquids, drills, storage, units, logic
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user