Skip to content

Allow multiple bounties on same target. #82

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 46 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
182a865
**MagicBounty**
wispborne Nov 8, 2024
a0eaefc
Fixed Crash when starting battles if there's no flagship.
wispborne Nov 13, 2024
23388f9
Added CommunityApiDocs submodule + updated readme for it.
wispborne Nov 27, 2024
c438e92
Fixing submodule?
wispborne Dec 4, 2024
31827bb
Fixing submodule??
wispborne Dec 4, 2024
161d550
Adding to CommunityApiDocs readme.
wispborne Dec 4, 2024
b95f3dc
- Fixed Bounty Board using `job_forFaction` instead of `trigger_marke…
wispborne Dec 31, 2024
5feb6d4
**MagicAchievements** - Fixed serious performance issue in battles (r…
wispborne Jan 15, 2025
7310837
Hopefully *actually* fixed the Achievements. Now compares memory usin…
wispborne Jan 16, 2025
b093454
Fixed RC2's crash on load if using certain mods (RAT)
wispborne Jan 23, 2025
172a693
MagicPaintjob refit update. WIP
Starficz Mar 4, 2025
7ee0b7c
Formatting pass + locked down visibility modifiers.
wispborne Mar 4, 2025
61c2b27
Formatting pass v2
Starficz Mar 6, 2025
92a10eb
MagicPaintjob WIP2: back button, borders, and panel location correct
Starficz Mar 6, 2025
6adc1fb
MagicPaintjob WIP3: tiling shipPreviews, previews act like buttons, p…
Starficz Mar 7, 2025
6330896
MagicPaintjob v2 RC1: All major features of v1 have been implemented
Starficz Mar 9, 2025
4217afc
MagicPaintjob Backend update:
Starficz Mar 11, 2025
abdafc2
Reverted all MagicPaintjob work in dev, moved to branch.
wispborne Mar 12, 2025
07540e3
Make it clear that the test bounty is a test bounty, and don't load it.
wispborne Mar 22, 2025
e4929f1
Fixed achievements file not getting created if missing.
wispborne Apr 9, 2025
869157f
Fixed a bug since 2022 where `MagicCampaign.loadVariant` did not load…
wispborne Apr 20, 2025
efc1d4c
Fixed "find/collect/see/install/etc X number of something" achievemen…
wispborne Apr 21, 2025
f11d943
Fix bounties that use existing_target_memkey
S-Numan Apr 23, 2025
47d60f8
Allow multiple bounties on same target.
S-Numan Apr 23, 2025
0022694
Revert "Allow multiple bounties on same target."
S-Numan Apr 23, 2025
a62d54c
Allow multiple bounties on same target.
S-Numan Apr 23, 2025
c887d1e
Handle bounties if accepted.
S-Numan Apr 23, 2025
1cae487
Merge remote-tracking branch 'origin/dev' into dev
wispborne Apr 24, 2025
cd88057
Merge remote-tracking branch 'Numan/fix-existing_bounty' into dev
wispborne May 1, 2025
ed311b9
Fix bounties that use existing_target_memkey (#81)
S-Numan May 1, 2025
0d7e47f
Merge remote-tracking branch 'origin/dev' into dev
wispborne May 2, 2025
150aa7b
Fixed subsystem UI color.
wispborne May 2, 2025
7d823ad
Achievements now have a default script.
wispborne May 2, 2025
47bd264
Changed 2nd subsystem hotkey to Y instead of B.
wispborne May 2, 2025
0111942
Fixed shinies.
wispborne May 9, 2025
1baccb9
Fixed blacklist excluding src code from public release.
wispborne May 10, 2025
02bf82d
make text look more gooder (#86)
ruddygreat Jun 10, 2025
0ef3365
Added `List<String>.magicJoinToString` as a Kotlin extension method, …
wispborne Jun 10, 2025
296ef3c
Accepted bounty intel is now marked as important.
wispborne Jun 10, 2025
a58023e
Enhanced `ShipKillsAchievement` to support default arguments, generat…
wispborne Jun 10, 2025
ea2fb6c
Updated run config
wispborne Jun 10, 2025
d7e1cfc
Some (untested) changes that should preserve save compatibility.
wispborne Jun 10, 2025
54e12a0
Added support for completing two different bounties on the same fleet…
wispborne Jun 10, 2025
fdae66e
Merge branch 'refs/heads/dev' into same-target
wispborne Jun 13, 2025
ad97604
Added hotkey (`T`) to accept bounties and improved backward compatibi…
wispborne Jun 13, 2025
7dedcbf
oops
wispborne Jun 14, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions .github/workflows/blacklist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ DO_NOT_USE
.flac$
banner.png$
.github/
media/
^media/
^release_checklist.md$
docs/
dokka/
^docs/
^dokka/
^lib/
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "CommunityApiDocs"]
path = CommunityApiDocs
url = [email protected]:StarsectorCommunityApiDocs/CommunityApiDocs.git
2 changes: 1 addition & 1 deletion .idea/artifacts/MagicLib.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/inspectionProfiles/Project_Default.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions .run/Run Starsector.run.xml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run Starsector" type="Application" factoryName="Application">
<option name="ALTERNATIVE_JRE_PATH" value="C:/Program Files (x86)/Fractal Softworks/Starsector/jre" />
<option name="ALTERNATIVE_JRE_PATH" value="C:/Program Files (x86)/Fractal Softworks/Starsector-0.98a-RC5/jre" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="true" />
<option name="MAIN_CLASS_NAME" value="com.fs.starfarer.StarfarerLauncher" />
<module name="MagicLib" />
<option name="VM_PARAMETERS" value="-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005 -noverify -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+ShowCodeDetailsInExceptionMessages -XX:+ExtensiveErrorReports -XX:+ShowMessageBoxOnError -XX:+PrintCommandLineFlags -XX:+TieredCompilation -XX:-UseCondCardMark -Xlog:async -XX:+UseFastStosb -XX:+AlwaysCompileLoopMethods -XX:TieredStopAtLevel=4 -XX:TrimNativeHeapInterval=60000 -XX:+UseCriticalCompilerThreadPriority -XX:+UseCriticalJavaThreadPriority -XX:UseAVX=3 -XX:AVX3Threshold=0 -XX:UseSSE=4 -XX:+UseSSE42Intrinsics -XX:+UseCompressedOops -XX:+UseCompressedClassPointers -XX:+UseFMA -XX:+UseBMI1Instructions -XX:+UseBMI2Instructions -XX:+UseCLMUL -XX:+UseFastUnorderedTimeStamps -XX:+UseUnalignedLoadStores -XX:+UseXMMForArrayCopy -XX:+UseXMMForObjInit -XX:+UseXmmI2D -XX:+UseXmmI2F -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:+ParallelRefProcEnabled -XX:+UseShenandoahGC -XX:ShenandoahGCMode=iu -XX:ShenandoahGCHeuristics=compact -XX:ShenandoahAllocationThreshold=85 -XX:ShenandoahGuaranteedGCInterval=0 -XX:+ZeroTLAB -XX:+SegmentedCodeCache -XX:+AlwaysAtomicAccesses -XX:+UseStringDeduplication -XX:-DontCompileHugeMethods -XX:Tier0Delay=1 -XX:+UseFPUForSpilling -XX:+EnableVectorAggressiveReboxing -XX:+EnableVectorReboxing -XX:+EnableVectorSupport -XX:-AlignVector -XX:TieredOldPercentage=10000 -XX:Tier0ProfilingStartPercentage=2000 -XX:IncreaseFirstTierCompileThresholdAt=99 -XX:InterpreterProfilePercentage=99 -XX:+UseVectorCmov -XX:+UseVectorStubs -XX:ReferencesPerThread=0 -XX:MaxGCPauseMillis=10 -XX:-EnableThreadSMRStatistics -XX:+UseUnalignedAccesses -XX:PerMethodRecompilationCutoff=100000 -XX:ProfileMaturityPercentage=100 -XX:NmethodSweepActivity=1 -XX:ThreadPriorityPolicy=1 -XX:ReservedCodeCacheSize=256m -XX:+PrintCodeCache -XX:-UseDynamicNumberOfCompilerThreads -XX:CompilerDirectivesFile=./compiler_directives.txt -Djava.library.path=native\\windows -XX:-BytecodeVerificationLocal -XX:-BytecodeVerificationRemote -Djava.util.Arrays.useLegacyMergeSort=true --enable-preview --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/java.nio.Buffer.UNSAFE=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.locks=ALL-UNNAMED --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.lang.ref=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.desktop/java.awt.font=ALL-UNNAMED --add-opens=java.desktop/java.awt.Rectangle=ALL-UNNAMED --add-opens=java.desktop/java.awt=ALL-UNNAMED --add-exports=java.base/jdk.internal.ref=ALL-UNNAMED --add-exports=java.base/jdk.internal.misc=ALL-UNNAMED --add-exports=java.base/sun.nio.ch=ALL-UNNAMED -Xmx2048m -Xms2048m -Xss4m -Dcom.fs.starfarer.settings.paths.saves=..\\saves -Dcom.fs.starfarer.settings.paths.screenshots=..\\screenshots -Dcom.fs.starfarer.settings.paths.mods=..\\mods -Dcom.fs.starfarer.settings.paths.logs=. -classpath janino.jar;commons-compiler.jar;commons-compiler-jdk.jar;starfarer.api.jar;starfarer_obf.jar;jogg-0.0.7.jar;jorbis-0.0.15.jar;json.jar;lwjgl.jar;jinput.jar;log4j-1.2.9.jar;lwjgl_util.jar;fs.sound_obf.jar;fs.common_obf.jar;xstream-1.4.10.jar;txw2-3.0.2.jar;jaxb-api-2.4.0-b180830.0359.jar;webp-imageio-0.1.6.jar com.fs.starfarer.StarfarerLauncher" />
<option name="WORKING_DIRECTORY" value="C:/Program Files (x86)/Fractal Softworks/Starsector/starsector-core" />
<option name="WORKING_DIRECTORY" value="$STARSECTOR_INSTALL_DIR$/starsector-core" />
<method v="2">
<option name="MakeProject" enabled="true" />
<option name="BuildArtifacts" enabled="true">
Expand Down
36 changes: 36 additions & 0 deletions CHANGELOGS.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,39 @@
Version 1.5.7

**MagicBounty**
- Fixed bounties that use existing_target_memkey (by Numan).
- Fixed shiny paintjobs not getting added due to vanilla wonkiness.
- Accepted bounty intel is now marked as important.
- Added hotkey (`T`) to accept a bounty.

**MagicAchievements**
- Increased "shiny" paintjob spawn rate to 1 in 25 (was 1 in 50).
- "Shiny" paintjobs only show up in NPC fleets only and are permanent (cannot be removed/changed).
- Paintjob UI on refit screen now makes sounds.
- Removed perf impact of checking if there's a completed achievement to show a notification for.
- `ShipKillsAchievement` now auto-generates the description and tooltip (configurable).

**MagicSubsystems**
- Improved clarity of text (contributed by @Ruddygreat).

**Other**
- Added `List<String>.magicJoinToString` as a Kotlin extension method, which joins strings in a list using different separators based on the number of elements

Version 1.5.6

**MagicCampaign**
- Fixed a bug from 2022 where `MagicCampaign.loadVariant` did not load `permaMods`/`sMods` correctly (reported by arbiter787).

**MagicAchievements**
- Fixed "find/collect/see/install/etc X number of something" achievements not completing.

Version 1.5.5

**MagicAchievements**
- sorry
- Fixed achievements file not getting created if missing.
- This prevented achievements from loading, crashing mods e.g. AotD: VoK.

Version 1.5.4

**MagicAchievements**
Expand Down
1 change: 1 addition & 0 deletions CommunityApiDocs
Submodule CommunityApiDocs added at 697dd5
2 changes: 0 additions & 2 deletions MagicLib-Kotlin/MagicLib-Kotlin.iml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="LunaLib" level="project" />
<orderEntry type="library" name="jars-ConsoleCommands" level="project" />
<orderEntry type="library" name="LunaLib" level="project" />
<orderEntry type="library" name="starfarer-api" level="project" />
<orderEntry type="library" name="Vayra's Sector" level="project" />
<orderEntry type="library" name="jars-ConsoleCommands" level="project" />
Expand Down
35 changes: 35 additions & 0 deletions MagicLib-Kotlin/src/org/magiclib/kotlin/OtherExtensions.kt
Original file line number Diff line number Diff line change
Expand Up @@ -118,4 +118,39 @@ fun ShipAPI.getForwardVector(): Vector2f {

// Return the forward vector
return Vector2f(x, y)
}


/**
* Joins strings in a list using different separators based on the number of elements.
*
* - For empty list: returns empty string
* - For single element: returns that element
* - For two elements: joins them with [twoElementSeparator]
* - For 3+ elements: joins all but last with [listSeparator], then adds last element with [manyElementsFinalSeparator]
*
* Example usage:
* ```kt
* listOf("apple").magicJoinToString() // "apple"
* listOf("apple", "banana").magicJoinToString() // "apple or banana"
* listOf("apple", "banana", "orange").magicJoinToString() // "apple, banana, or orange"
* ```
*
* @param listSeparator Separator used between elements in lists of 3+ items
* @param twoElementSeparator Separator used between exactly 2 items
* @param manyElementsFinalSeparator Separator used before final element in lists of 3+ items
* @return The joined string
*/
fun List<String>.magicJoinToString(
listSeparator: String = ", ",
twoElementSeparator: String = " or ",
manyElementsFinalSeparator: String = ", or ",
transform: ((String) -> String) = { it },
): String {
return when (this.size) {
0 -> ""
1 -> transform(this.first())
2 -> "${transform(this.first())}${twoElementSeparator}${transform(this.last())}"
else -> "${this.dropLast(1).joinToString(listSeparator, transform = transform)}${manyElementsFinalSeparator}${transform(this.last())}"
}
}
22 changes: 17 additions & 5 deletions MagicLib.iml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@
<orderEntry type="module-library">
<library>
<CLASSES>
<root url="file://C:/Program Files (x86)/Fractal Softworks/Starsector/mods/Console Commands/jars" />
<root url="file://$STARSECTOR_INSTALL_DIR$/mods/Console Commands/jars" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="file://C:/Program Files (x86)/Fractal Softworks/Starsector/mods/Console Commands/jars" />
<root url="file://$STARSECTOR_INSTALL_DIR$/mods/Console Commands/jars" />
</SOURCES>
<jarDirectory url="file://C:/Program Files (x86)/Fractal Softworks/Starsector/mods/Console Commands/jars" recursive="false" />
<jarDirectory url="file://C:/Program Files (x86)/Fractal Softworks/Starsector/mods/Console Commands/jars" recursive="false" type="SOURCES" />
<jarDirectory url="file://$STARSECTOR_INSTALL_DIR$/mods/Console Commands/jars" recursive="false" />
<jarDirectory url="file://$STARSECTOR_INSTALL_DIR$/mods/Console Commands/jars" recursive="false" type="SOURCES" />
</library>
</orderEntry>
<orderEntry type="module" module-name="MagicLib-Kotlin" />
Expand Down Expand Up @@ -47,7 +47,7 @@
<orderEntry type="module-library">
<library>
<CLASSES>
<root url="jar://C:/Program Files (x86)/Fractal Softworks/Starsector/mods/zz GraphicsLib-1.9.0/jars/Graphics.jar!/" />
<root url="jar://$STARSECTOR_INSTALL_DIR$/mods/zz GraphicsLib-1.9.0/jars/Graphics.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
Expand All @@ -65,5 +65,17 @@
</orderEntry>
<orderEntry type="library" name="Kotlin-Runtime" level="project" />
<orderEntry type="library" name="LazyLib" level="project" />
<orderEntry type="module-library">
<library>
<CLASSES>
<root url="file://$MODULE_DIR$/../MagicAchievementsVanillaPack/jars" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="file://$MODULE_DIR$/../MagicAchievementsVanillaPack/src" />
</SOURCES>
<jarDirectory url="file://$MODULE_DIR$/../MagicAchievementsVanillaPack/jars" recursive="false" />
</library>
</orderEntry>
</component>
</module>
14 changes: 9 additions & 5 deletions data/campaign/rules.csv
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
id,trigger,conditions,script,text,options,notes
"#RULESET_NAME MagicLib (bounties)",,,,,,
magiclib_bountyboard_addevent,AddBarEvents,"ShouldShowMagicBountyBoard","AddBarEvent magiclib_bountyboard_selected ""Connect to the local unsanctioned bounty board."" ""A subroutine from your implant informs you that this establishment is broadcasting an informal job board.""",,,
magiclib_bountyboard_selected,DialogOptionSelected,"$option == magiclib_bountyboard_selected","ShowMagicBountyBoardCmd",,,
#RULESET_NAME MagicLib (bounties),,,,,,
magiclib_bountyboard_addevent,AddBarEvents,ShouldShowMagicBountyBoard,"AddBarEvent magiclib_bountyboard_selected ""Connect to the local unsanctioned bounty board."" ""A subroutine from your implant informs you that this establishment is broadcasting an informal job board.""",,,
magiclib_bountyboard_selected,DialogOptionSelected,$option == magiclib_bountyboard_selected,ShowMagicBountyBoardCmd,,,
magiclib_bountyCommText,OpenCommLink,"$entity.MagicLib_Bounty_target_hasReply score:1000
!$entity.ignorePlayerCommRequests","$entity.ignorePlayerCommRequests = true
MagicBountyCommsReplyCmd",,cutCommLinkNoText:Continue,
#magiclib_test_bounty_completed,"magiclib_test_bounty_completed",,"BountyScriptExample",,,

,,,,,,
magiclib_fleetencounter_shiny,BeginFleetEncounter,DoesFleetHaveShiny score:9999998,"FireBest BeginFleetEncounter
AddText ""One of the ships displayed on sensors appears to have a non-standard paintjob.""
Highlight ""paintjob""",,,
,,,,,,
#magiclib_test_bounty_completed,magiclib_test_bounty_completed,,BountyScriptExample,,,
4 changes: 2 additions & 2 deletions data/config/LunaSettings.csv
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ magiclib_subsystems_InfoKeyBind,Info Keybind,Keycode,23,,"Keybind for viewing su
magiclib_subsystems_KeyBindText,Description,Text,"Keybinds for subsystems. They are used in order. If any are empty they will be ignored and the next available keybind will be used.",,,,,
# 56 = left alt
magiclib_subsystems_KeyBind1,Keybind 1,Keycode,56,,"First assigned keybind",,,
# 48 = KEY_B
magiclib_subsystems_KeyBind2,Keybind 2,Keycode,48,,"Second assigned keybind",,,
# 21 = KEY_Y
magiclib_subsystems_KeyBind2,Keybind 2,Keycode,21,,"Second assigned keybind",,,
# 35 = KEY_H
magiclib_subsystems_KeyBind3,Keybind 3,Keycode,35,,"Third assigned keybind",,,
# 36 = KEY_J
Expand Down
3 changes: 2 additions & 1 deletion data/config/magic_achievements.csv
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ id,name,description,tooltip,script,image,spoilerLevel,rarity,
# description: Required. The description of the achievement. Use past tense ("Killed 10 ships"). Aim for one or two sentences.
# tooltip: Optional. A hardcoded tooltip to display when the player hovers over the achievement in the achievement list,
# for example for any detailed explanation that doesn't fit in the description.
# script: Required. The fully qualified name of the script (Java/Kotlin) class that implements the achievement. Must be a subclass of MagicAchievement.
# script: Optional. The fully qualified name of the script (Java/Kotlin) class that implements the achievement. Must be a subclass of MagicAchievement. If not provided, achievement should be unlocked by your code somewhere else.
# image: Optional. The path to the image to display for the achievement once unlocked. If not specified, the image will be based on rarity.
# spoilerLevel: Optional. Think about how the visibility may incentivize the player's behavior.
# VISIBLE (default): The achievement is visible to the player at all times, and its progress is shown.
Expand All @@ -18,3 +18,4 @@ id,name,description,tooltip,script,image,spoilerLevel,rarity,
# Examples
#magiclib_exampleSimple,"Example Regular Achievement","Created your first achievement.",,org.magiclib.achievements.ExampleSimpleAchievement,,VISIBLE,UNCOMMON
#magiclib_exampleCustom,"Example Customized Achievement","Created your first achievement with a custom icon and tooltip.","Optional tooltip. To learn how to create an achievement, read the documentation!",org.magiclib.achievements.ExampleCustomAchievement,"/graphics/magic/icons/example_achievement.png",SPOILER,RARE
#magiclib_exampleNoScript,"Example Scriptless Achievement","Created your first achievement without a script.","Optional tooltip. To learn how to create an achievement, read the documentation!",,"/graphics/magic/icons/example_achievement.png",SPOILER,RARE
1 change: 1 addition & 0 deletions data/config/modFiles/magicBounty_data.json
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@
"fleet_flagship_alwaysRecoverable":false,
"fleet_preset_ships":{
"tempest_Attack":2,
#"asdf":1,
#"shade_Assault":1,
#"omen_PD":2,
"revenant_Elite":1,
Expand Down
3 changes: 2 additions & 1 deletion data/config/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
}
},
"ruleCommandPackages": [
"org.magiclib.bounty.rulecmd"
"org.magiclib.bounty.rulecmd",
"org.magiclib.paintjobs.rulecmd"
]
}
1 change: 1 addition & 0 deletions data/console/commands.csv
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ command,class,tags,syntax,help
MagicLib_ListBounties,org.magiclib.bounty.console.ListBountiesCommand,"MagicLib,campaign",MagicLib_ListBounties [optionalBountyId],Lists bounties loaded on MagicLib's Bounty Board.
MagicLib_ListRequirements,org.magiclib.bounty.console.ListBountiesRequirementsCommand,"MagicLib,campaign",MagicLib_ListRequirements [optionalBountyId],Lists the currently active bounties loaded on MagicLib's Bounty Board. and their requirements to show up.
MagicLib_ResetBounty,org.magiclib.bounty.console.ResetBountyCommand,"MagicLib,campaign",MagicLib_ResetBounty <bountyId>,Resets a MagicLib bounty.
MagicLib_ListPaintjobs,org.magiclib.paintjobs.console.ListPaintjobsCommand,"MagicLib,campaign",ListPaintjobsCommand,"List all paintjobs."
MagicLib_UnlockPaintjob,org.magiclib.paintjobs.console.UnlockPaintjobCommand,"MagicLib,campaign",MagicLib_UnlockPaintjob [all|<paintjobId>],"Use 'all' to unlock all paintjobs permanently, or specify an id. Run with no arguments to list all."
Binary file added dokka/dokka-base-1.9.20.jar
Binary file not shown.
Binary file added dokka/dokka-cli-1.9.20.jar
Binary file not shown.
Binary file modified jars/MagicLib-Kotlin.jar
Binary file not shown.
Binary file modified jars/MagicLib.jar
Binary file not shown.
Binary file added lib/hotswap-agent.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion magiclib.version
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@
{
"major": "1",
"minor": "5",
"patch": "4-RC01"
"patch": "7"
}
}
2 changes: 1 addition & 1 deletion mod_info.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"author": "Modding Community: Dark.Revenant, LazyWizard, Nicke, Originem, Rubi, Schaf-Unschaf, Snrasha, Tartiflette, Wisp, Wyvern...",
"utility": "false",
# Using the long version format lets the game correctly compare major/minor/patch versions.
"version": { "major": '1', "minor": '5', "patch": '4' },
"version": { "major": '1', "minor": '5', "patch": '7' },
"description": "A collection of classes to aid modding. Not a mod in itself, but required by other mods.",
"gameVersion": "0.98a-RC7",
"dependencies": [
Expand Down
4 changes: 2 additions & 2 deletions src/org/magiclib/achievements/MagicAchievement.java
Original file line number Diff line number Diff line change
Expand Up @@ -215,11 +215,11 @@ public void advanceInCombat(float amount, List<InputEventAPI> events, boolean is
*/
public void saveChanges() {
getLogger().info("Saving achievements triggered by '" + spec.getId() + "' from mod '" + spec.getModName() + "'.");
MagicAchievementManager.getInstance().saveAchievements(true);
MagicAchievementManager.getInstance().saveAchievements(true, false);
}

private void saveChangesWithoutLogging() {
MagicAchievementManager.getInstance().saveAchievements(false);
MagicAchievementManager.getInstance().saveAchievements(false, false);
}

/**
Expand Down
Loading