Commit Graph
100 Commits
Author SHA1 Message Date
MEEPofFaithandGitHub c193206ccb Modded payload factory sprites (#8595)
* Search for modded payload factory blocks

* Generate payload mass driver outlines in mods

* Revert weird change

* Revert "Revert weird change"

This reverts commit 0afd64077a.
2024-07-07 11:42:45 -04:00
MEEPofFaithandGitHub 4a456645d3 ConsumeItemList (#9947)
* ConsumeItemList

* Add to ContentParser

* Add efficiency multipliers

* Untested adding to ObjectIntMap and ObjectFloatMap

* Use a single map
2024-07-07 11:38:21 -04:00
MEEPofFaithandGitHub 5c23abf2d8 Add destination tile to block rotatedOutput (#9949)
* Add destination to rotatedOutput

* Apply to GenericCrafter for output directions.

* Forgot to remove some logs
2024-06-16 00:42:40 -04:00
MEEPofFaithandGitHub fd303524e9 #9706 done smarter (#9723)
* Convert from explicit check to interface

* Apply the interface to other turret-like blocks
2024-04-09 11:16:49 -04:00
MEEPofFaithandGitHub 17913f8949 Run applyColor before drawing unit parts (#9547)
* Run applyColor before drawing unit parts

* Run applyColor before drawing weapon parts
2024-04-09 10:52:41 -04:00
MEEPofFaithandGitHub 58d6b3e2d6 Make ChildComp work with turrets (#9706) 2024-04-06 09:52:39 -04:00
MEEPofFaithandGitHub 2fb5bc56c6 Better Ability Stats (#9654)
* Fix armor plate multiplier + change Math.round to Strings.autoFixed

* Missing ability name bundles

* Center ability name

* SuppressionFieldAbility stats

* Is two per row is acceptable?

I can revert this commit if not.

* LiquidExplodeAbility stat display

* MoveLightningAbility stat display

* Better SpawnDeathAbility display

* Fix multiplier coloring inconsistencies

Some had [lightgray] before %/x, some had it after

* Consistent content name display

Match with bullet status effects

* Consistent stat formatting

Convert from some being "stat: #" and some being "# stat" to all being "# stat"

* Re-order stats

* Optimize Imports

* Add ability descriptions

* Apparently I forgot LiquidRegenAbility

* Mention healing allies if displayHeal = true
2024-03-30 00:11:39 -04:00
MEEPofFaithandGitHub d8c1ea17e1 Make payload blocks run onDestroyed() of the block payload it carries when destroyed. (#8253)
* Payloads go boom.

* When a payload unit dies too

* Keep the functionality, but limit it to a rule
2024-03-29 15:17:19 -04:00
MEEPofFaithandGitHub 4cacb79ccd Auto-add produce to liquids (#9666) 2024-03-25 13:31:03 -04:00
MEEPofFaithandGitHub 60c6e03d32 Weather with World Logic (#9621)
* Weather sense

Honestly, doesn't seem game changing enough to warrant privileged restriction.

* Weather set

* Rename "snow" to "snowing"

Fix conflict with the snow floor block, though I don't know if this'll have negative repercussions on saves.

* Don't last forever

* Cleanup and bundle

* add space
2024-03-14 14:25:03 -04:00
MEEPofFaithandGitHub aa896362dc Shader getShaderFi check for mod files (#9599)
* Shader getShaderFi check for mod files

* Just use tree.get()

It defaults to files.internal() if nothing is found. Actually, I think this also has the added benefit of allowing mods to override vanilla shaders by having a frag with an identical name.
2024-03-01 12:50:28 -05:00
MEEPofFaithandGitHub 037f752b73 Improve ArmorPlateAbility draw (#9581)
* Improve ArmorPlateAbility draw

* Revert to tinting

Just make a white shine sprite. Or none-white if you want some interesting visuals with the colors.

* Fix not applying z when drawShine = false
2024-02-23 17:11:00 -05:00
MEEPofFaithandGitHub 4e24b31c0d Allow gasses to be coolants (#9545) 2024-02-17 11:23:25 -05:00
MEEPofFaithandGitHub 8f231febb8 Layer options in DrawTurret (#9541) 2024-02-12 23:32:30 -05:00
MEEPofFaithandGitHub 9093c92b07 Add RandomSound support to ContentParser (#9518) 2024-02-04 18:58:40 -05:00
MEEPofFaithandGitHub 75ae76135f targetUnderBlocks for units (#8160)
* targetUnderBlocks for units

You know, why don't units use the same targeting code as turrets?

* prioritize non-under blocks
2024-02-03 12:17:07 -05:00
MEEPofFaithandGitHub e1a5484074 Allow mods to add to logic effect map (#9507)
* Allow mods to add to logic effect map

* Switch to being only a single add.
2024-02-01 19:04:51 -05:00
MEEPofFaithandGitHub cc0ac1523b SoundEffect's sound should be delayed by its startDelay (#9502)
* SoundEffect's sound should be delayed by its startDelay

* h
2024-01-30 10:45:38 -05:00
MEEPofFaithandGitHub 1b14a09f1c Shield health should also be factored in pierce factor when maxDamageFraction is 0 (#9486) 2024-01-27 21:24:48 -05:00
MEEPofFaithandGitHub 2d6e1cdf65 PointLaserBulletType support for Weapons (#9331)
* PointLaserBulletType support for Weapons

I hate adding more fields to Weapon, but oh well. It's the price to pay when the behavior of what should be spread across multiple classes is compacted into a single class.

* Fix several problems
2023-12-01 20:50:32 -05:00
MEEPofFaithandGitHub 9bd494504e angleOffset is added twice in Weapon shoot (#9332) 2023-11-30 07:18:40 -05:00
MEEPofFaithandGitHub 2522b16738 SoundEffect - An Effect that produces sound when created. (#9178)
* SoundEffect

* Add to ClassMap

* Loading via prov does not work

* MEEP, that's not how you random
2023-10-19 13:55:04 -04:00
MEEPofFaithandGitHub 1d484d34e7 Point bullets hitting buildings doesn't call hit (#9106)
* Point bullet hitting buildings doesn't call hit

* Use px/py
2023-09-28 14:26:45 -04:00
MEEPofFaithandGitHub fa0ce204da Unnecessary Drawer Icon Adding (#9078)
* DrawBlock icons shouldn't have icons by default

It doesn't make sense for drawers like DrawLiquidTile to return icons. Overriding in every such class doesn't make as much sense as simply changing the superclass.

* Ensure that finalIcons is never empty
2023-09-20 21:20:22 -04:00
MEEPofFaithandGitHub 3d0541084b Weird creation things (#8860) 2023-07-29 13:29:21 -04:00
MEEPofFaithandGitHub 0d8c07d007 Bullet despawn unit shenanigans (#8859)
* Proper despawn unit direction

* Despawn unit chance

* Merge if statements
2023-07-28 23:55:20 -04:00
MEEPofFaithandGitHub e5ded1f2dd Allow fluid type configuration for ConsumeCoolant (#8841)
* Allow fluid type configuration for ConsumeCoolant

* Methods
2023-07-25 21:47:46 -04:00
MEEPofFaithandGitHub b4e03b46f6 Destroy bullet team (#8792)
* Option for destroy bullet to be on the block's team

* Random direction

* h
2023-07-23 16:27:11 -04:00
MEEPofFaithandGitHub 26c0c7467b Lock rotation of blocks with rotate = false to 0 (#8531)
* Lock rotation of blocks that don't rotate

* Fix input visuals

* Default to false

Quick, stop forcing changes to mods before sk yells at me.

* lock GenericCrafter rotation if rotate = false

* Convert from a setter a to block method

* Simplify

* Revert "lock GenericCrafter rotation if rotate = false"

This reverts commit 26ac41baf5.

* Remove `lockRotation` boolean.

Pointless. If you want something to rotate, just do `rotate = true; drawArrow = false;`
2023-06-16 15:57:54 -04:00
MEEPofFaithandGitHub 2ff7ccfc19 Laser pierce fixes. (#8526)
* Flip pierce check order

Allow pierce cap + laser to function together

* Apply to continuous bullets

+ Make visually accurately show length.

* laser parameter for findPierceLength

consistency with collideLine
2023-06-15 19:33:01 -04:00
MEEPofFaithandGitHub 40c5510205 Better handling of missiles splitting to other missiles (#8603)
- Pass a shooter separate to owner into `BulletType#create`. `killShooter` kills the owner while the shooter is passed into the missile ai
- `killShooter` no longer kills already dead units
- `MissileAI` no longer aims at shooter's aim pos if the shooter is dead
2023-06-15 13:57:27 -04:00
MEEPofFaithandGitHub 38b2540677 Side-based liquid tile padding (#8676) 2023-06-05 10:37:26 -04:00
MEEPofFaithandGitHub 8e1e003ff2 Inversion option for payload router sorting (#8652) 2023-05-30 22:51:07 -04:00
MEEPofFaithandGitHub 257d341703 Spinning FlareParts (#8637) 2023-05-28 00:06:57 -04:00
MEEPofFaithandGitHub 047d39d129 Chained PartProgress Operation in Json (#8627)
* Op parsing method

* Parse multi op

* Big brain

* Parse operation array

* Error wording

* Unnecessary code
2023-05-19 21:03:39 -04:00
MEEPofFaithandGitHub b6d27c16be Interval bullets for continuous bullets (#8628) 2023-05-19 21:02:54 -04:00
MEEPofFaithandGitHub 6cd778783e Shift swarmer shoot barrels to match the chutes (#8624)
Similar to how cyclone shoot barrels match the ends of each barrel.
2023-05-19 10:53:06 -04:00
MEEPofFaithandGitHub 688b5b9eea Revert "Properly handle missile units shooting more missile units (#8359)" (#8585)
This reverts commit 1373381554.
2023-05-12 01:58:30 -04:00
MEEPofFaithandGitHub 2c77477987 PartMove progress is ignored for growth (#8580) 2023-05-11 01:06:49 -04:00
MEEPofFaithandGitHub 397fd087f2 RegionPart movement should not be affected by growth scale (#8578) 2023-05-10 21:07:40 -04:00
MEEPofFaithandGitHub a5eda4fb2e Horizontal shifting of pistons (also adds proper icons for pistons) (#8345)
* Horizontal offset for pistons

* might as well fix icons in the meantime

* Make a positive offset shift to the right
2023-05-10 13:10:48 -04:00
MEEPofFaithandGitHub 31bed37976 Ser-pew-lo Turret Animations (#8562)
* Scatter animations

* Do the same thing to salvo

Like, the exact same thing.

Corporate wants you to tell the difference between these two pictures.
They're the same picture.

* Faster salvo barrel recoil

* Move entire scatter midsection

* Cyclone barrel animations
2023-05-10 12:52:54 -04:00
MEEPofFaithandGitHub 1373381554 Properly handle missile units shooting more missile units (#8359)
* Properly handle missile units shooting more missile units

* Remove `shooter`, just pass down the owner
2023-05-09 20:34:13 -04:00
MEEPofFaithandGitHub 2289f29bd5 Revert Math.max in shakeReduction (#8570) 2023-05-09 09:33:59 -04:00
MEEPofFaithandGitHub 552d6a2e9f Smoother Screenshake Reduction (#8310)
* Smoother Screenshake Reduction

Screen shake will now always reach 0 no matter the intensity or duration without being cut off early.

* Keep the max reduction rate
2023-05-08 18:41:56 -04:00
MEEPofFaithandGitHub 9aa45b2a7c Attempt healing targetting even if the bullet doesn't collide with ground targets (#8516) 2023-05-08 17:05:27 -04:00
MEEPofFaithandGitHub cc17962d93 Clear invalid payload ammo (#8544) 2023-05-06 21:34:11 -04:00
MEEPofFaithandGitHub 61a83d0f6e warmup and totalProgress for Pumps (#8536) 2023-04-28 10:42:31 -04:00
MEEPofFaithandGitHub 1314dfe53e Don't set lighting if the preset has noLighting = true (#8519)
* Don't set lighting if the preset has noLighting = true

Allows lighting in the preset or world processors to take over instead of being forced to disable lighting.

* Less confusing style
2023-04-21 21:56:16 -04:00
MEEPofFaithandGitHub 6a3b243937 Erekir payload conveyor sprite consistency (#8506)
* Erekir payload conveyor sprite consistency

* Better blending from conveyor to factory

* Better blending for the 5x5
2023-04-18 16:37:34 -04:00
MEEPofFaithandGitHub b2f5312bf5 Add overlays to render updates (#8514) 2023-04-18 10:14:07 -04:00
MEEPofFaithandGitHub 1629afe491 Ammo obliteration (#8498)
* alwaysShooting for turrets

similar to alwaysShooting for weapons

* Weapon alwaysShooting takes shootCone into account

Speaking of untested PRs...
2023-04-09 16:12:24 -04:00
MEEPofFaithandGitHub 6d71bcd2eb Multi shotgun fix (#8460)
* Multi-barrel shotgun fix

* multi-recoil support

* @Nullable for everything
2023-04-03 16:38:10 -04:00
MEEPofFaithandGitHub f55363a932 Fix janky sublimate ammo display (#8469) 2023-04-03 10:03:24 -04:00
MEEPofFaithandGitHub b322b1165f Parse singular consumes (#8466)
* Parse singular `Consume`s

* Proper coolant parsing

* Temporary manual update of ClassMap

Does not include all consume types.

I don't know what gradle command to run to update `ClassMap`. I've tried `tools:updateScripts` but that just cleared everything.
2023-04-02 19:53:19 -04:00
MEEPofFaithandGitHub e51ab514a8 Proper speedup amount (#8461) 2023-04-02 00:19:33 -04:00
MEEPofFaithandGitHub ac19c3f160 bridgeReplacement for ducts (#8447) 2023-03-30 21:23:53 -04:00
MEEPofFaithandGitHub 0de2c95f6e (Optionally) Scale efficiency of attribute crafters (#8433)
* Scale efficiency of attribute crafters

* Make it optional :D

* Call super
2023-03-26 14:53:14 -04:00
MEEPofFaithandGitHub fcb44e4952 Fix frags in frags creating a large empty space (#8430)
* Fix frags in frags creating a large empty space

* Change suppression message

Consistency with status duration

* Too little space between boxes
2023-03-26 11:53:46 -04:00
MEEPofFaithandGitHub 6b936aa7f6 Better Ammo Stats Display (#8429)
* Cleaner ammo stats based on unit factory recipe stats

* Display suppression in bullet stats

Also reword from "regen" to "repair" to more accurately convey that build towers are affected as well.

* PointLaserBulletTypes don't display damage in dps

* Display preview region instead of region

* autoFixed
2023-03-25 22:45:07 -04:00
MEEPofFaithandGitHub f6a8c7509d Include int[] in readObject/writeObject (#8400)
* Include int[] in readObject/writeObject

* The almighty Object[]

* Order
2023-03-25 14:31:14 -04:00
MEEPofFaithandGitHub 47a2afd294 More specific ui scaling options (#8356)
Increments of 5 instead of 25
2023-03-25 14:24:09 -04:00
MEEPofFaithandGitHub 0122b735a0 Pierce damage decay (#8416) 2023-03-25 14:06:14 -04:00
MEEPofFaithandGitHub 9c3ddc398c Battery Graphical Updates (#8323)
* Battery Graphical Updates

* Add the vanilla fields back

* Add back topRegion and depricate it
2023-03-25 14:00:08 -04:00
MEEPofFaithandGitHub 90f7bbae65 Make an interface for blocks that spawn tethered units (#8395) 2023-03-25 13:51:43 -04:00
MEEPofFaithandGitHub b030a51485 If it don't collide, don't collide (#8388) 2023-03-25 13:49:22 -04:00
MEEPofFaithandGitHub aec3e178f5 Fix armor piercing ignoring status effect health multiplier (#8387)
* Make rawDamage protected

* pierceArmor ignores status effect health multiplier

* This is no longer the case
2023-03-25 13:47:53 -04:00
MEEPofFaithandGitHub 515a6f9c8d json-able attributes (#8334) 2023-03-08 13:11:53 -05:00
MEEPofFaithandGitHub 10e0be9d68 Drill multipliers for regular drills and beam drills (#8339)
* Drill multipliers for other drills

* h
2023-03-08 09:19:57 -05:00
a3f8ca9ca5 Shield flash on top (#8373)
Co-authored-by: Anuken <arnukren@gmail.com>
2023-03-08 09:17:39 -05:00
MEEPofFaithandGitHub a046f0f11b Non-hexagonal force projectors (#8358) 2023-03-08 09:16:07 -05:00
MEEPofFaithandGitHub 3c9b3680bc Interval Bullet Delay (#8365)
Like homing delay
2023-03-08 09:11:07 -05:00
MEEPofFaithandGitHub 0a1957eb13 Display Interval Bullet in Stats + Collapsers (#8366)
* Display interval bullets in stats

* Collapsers for sub-bullets

* highlight /sec as well

* top
2023-03-08 09:10:34 -05:00
MEEPofFaithandGitHub 75e1e6f166 Player unit spawns before core animation finishes (#8375)
* Player unit spawns before core animation finishes

* the

* Shouldn't the landing particles also be aimed at the tile's world pos?
2023-03-08 08:26:11 -05:00
MEEPofFaithandGitHub 0760923943 overRegion (#8337) 2023-02-27 11:26:47 -05:00
MEEPofFaithandGitHub 219084fe3c Don't generate edges if edges already exist (#8338) 2023-02-27 11:26:26 -05:00
MEEPofFaithandGitHub 29f36c1927 ClientServerConnectEvent (#8309) 2023-02-18 19:48:22 -05:00
MEEPofFaithandGitHub 348819d1ac connectedPower similar to conductivePower (#8306) 2023-02-15 23:22:05 -05:00
MEEPofFaithandGitHub a8a3453632 Move core launch/landing to CoreBlock (#8055)
* Move core launch/landing to CoreBlock

* Slight cleanup

* just gonna...
2023-02-15 12:16:51 -05:00
MEEPofFaithandGitHub 8726cde05d Return salvo and swarmer to how they were before shoot changes (#8278) 2023-02-15 09:01:03 -05:00
MEEPofFaithandGitHub cc3ae2c66c Use setBars instead of overriding displayBars (#8296) 2023-02-15 08:59:57 -05:00
MEEPofFaithandGitHub ce3643f0b3 Make type not required if the template already provides one (#8257)
Such as with missile units
2023-02-08 22:35:13 -05:00
MEEPofFaithandGitHub f1fb7d8098 Fix modded payload conveyor icons (#8266) 2023-02-08 22:28:44 -05:00
MEEPofFaithandGitHub 12f747ae1d Strip colors from mod name as well (#8224) 2023-02-01 14:45:56 -05:00
MEEPofFaithandGitHub 5e324e71d4 Hitscan fix 2 (#8175)
* Revert "Reverting #8037"

Re-implement #8037

* Properly count collisions

Fix #8170
2023-01-14 10:05:30 -05:00
MEEPofFaithandGitHub 6eeb49bb37 Fix armor piercing not working against buildings (#8150) 2023-01-11 09:06:44 -05:00
MEEPofFaithandGitHub 87949679f1 Make crash damage a multiplier instead of a toggle (#8151)
* Switch unitCrashDamage to a multiplier

* Add to rules dialog
2023-01-11 08:56:29 -05:00
MEEPofFaithandGitHub 7455fb21a4 Proper trails for point lasers (#8038)
* Proper trails for point lasers

* Take current size into account

* fh9weqfjpoepiofjwpiqoefjpoiwjieqpofpjioji

* Web editing moment

* Point laser bullets shouldn't have aa shoot effect

* h
2023-01-10 12:11:37 -05:00
MEEPofFaithandGitHub 2a6fcb7983 Region part growing (#7861)
E x p a n d
2023-01-09 22:08:40 -05:00
MEEPofFaithandGitHub a3270debac Fix collideLine (#8037) 2023-01-07 14:46:19 -05:00
MEEPofFaithandGitHub eb0481a1da Cargo units *will* chase you down if you pick up their target. (#8033) 2023-01-07 12:55:19 -05:00
MEEPofFaithandGitHub 47353cc808 Power icon (#7901)
* Power icon

* Less yellow yelloow
2023-01-07 11:49:59 -05:00
MEEPofFaithandGitHub 6eadac38b7 placeEffect (#7968) 2023-01-07 11:46:14 -05:00
MEEPofFaithandGitHub 5af8236643 Move beam drill facing update (Fix minor graphical glitch) (#8004)
* move beam drill facing update

* Add updateFacing back to updateTile

* Stop consuming if not drilling anything.
2023-01-07 11:43:07 -05:00
MEEPofFaithandGitHub 9af9e1459d Fix only 1 ammoType displaying with missile units (#8020) 2023-01-07 11:37:39 -05:00
MEEPofFaithandGitHub 8f9736d1d9 Make certain negative stats red (#7842) 2022-11-07 21:28:28 -05:00
MEEPofFaithandGitHub 68434ad42e Clearer Building Damage Multiplier Stat (#7471) 2022-11-07 17:59:47 -05:00
MEEPofFaithandGitHub 810a905af3 Allow heat region to produce light (#6879)
* Allow heat region to produce light

* Method overload for backwards compatability
2022-11-06 14:28:59 -05:00
MEEPofFaithandGitHub e914cb59cd Idle weapon reset to baseRotation (#7825) 2022-11-05 07:05:55 -04:00
MEEPofFaithandGitHub d42c0e3c48 baseRotation + rotationLimit compatability (#7820) 2022-11-04 16:04:35 -04:00