I hereby claim:
- I am theglitch76 on github.
- I am theglitch76 (https://keybase.io/theglitch76) on keybase.
- I have a public key whose fingerprint is 34FB B595 C752 ADEB 1393 739F 92AC 5054 310D 355A
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
package io.github.theglitch76.glitchbot.listener; | |
import net.dv8tion.jda.core.EmbedBuilder; | |
import net.dv8tion.jda.core.entities.Message; | |
import net.dv8tion.jda.core.entities.TextChannel; | |
import net.dv8tion.jda.core.entities.User; | |
import net.dv8tion.jda.core.events.message.guild.react.GuildMessageReactionAddEvent; | |
import net.dv8tion.jda.core.hooks.ListenerAdapter; | |
import java.io.FileInputStream; |
package io.github.theglitch76.glitchbot.command; | |
import com.jagrosh.jdautilities.command.Command; | |
import com.jagrosh.jdautilities.command.CommandEvent; | |
import net.dv8tion.jda.core.Permission; | |
import net.dv8tion.jda.core.entities.TextChannel; | |
import net.dv8tion.jda.core.exceptions.InsufficientPermissionException; | |
import java.io.File; | |
import java.io.FileInputStream; |
Mod Name | Version | Author(s) |
---|---|---|
CodeChicken Lib | 3.2.0.345 | ChickenBones, covers1624 |
CoFH Core | 4.5.2.19 | Team CoFH |
CoFH World | 1.2.0.5 | Team CoFH |
Redstone Flux | 2.0.2.3 | Team CoFH |
Thermal Expansion | 5.5.0.29 | Team CoFH |
Mod Name | Version | Author(s) |
---|---|---|
Actually Additions | 1.12.2-r135 | Ellpeck |
AE2 Stuff | 0.7.0.4 | bdew |
AI-Improvements | 1.12-0.0.1b3 | Unknown |
Akashic Tome | 1.2-10 | Vazkii |
Angel of Vengeance | 0.8.13 | Tamaized |
/* | |
* Copyright 2016 FabricMC | |
* | |
* Licensed under the Apache License, Version 2.0 (the "License"); | |
* you may not use this file except in compliance with the License. | |
* You may obtain a copy of the License at | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, software |
@Mixin(StatusEffectInstance.class) | |
public abstract class MixinStatusEffectInstance implements UpdateDurationSuperShim { | |
@Unique | |
private static final Object BLANK = new Object(); | |
@Shadow | |
protected abstract int updateDuration(); | |
@Unique | |
private ThreadLocal<Object> updateDurationLocal = new ThreadLocal<>(); | |
@Inject(method = "updateDuration", at = @At("HEAD"), cancellable = true) |
- Forge mods are remapped, patched, and loaded as full-class Fabric mods. | |
- Forge mods can be placed in the "mods" folder directly without any issues. | |
- Forge mods are not replaced, but instead the patched mods are kept in a cache somewhere else. | |
What we need: | |
- Two new stages that happen before mixins are applied: "discovery" and "addition" (todo better name for the latter) | |
discovery: | |
- Happens after all valid Fabric mods are put on the classpath, but before non-fabric mods are added to the classpath | |
- Patchwork specifically needs an option to exclude certain jars from being added to the classpath. | |
- Called "discovery" because this is the stage both Patchwork and Spungbric will use to find the jar files they need to do something with. | |
addition: |
import java.nio.file.Path; | |
import net.fabricmc.loader.api.ModContainer; | |
public interface ModProvider { | |
/** | |
* This stage is for scanning a jar and optionally choosing to provide this jar as a /todo link/ ProvidedModContainer. | |
* No transformations should occur during this stage. This allows Loader to fail hard if two {@link ModProvider}s | |
* attempt to provide the same modid for a jar. |
public class PatchworkModProvider implements ModProvider { | |
@Override | |
public void acceptCanidate(ProvidedModCanidateRepresentation representation) { | |
ModManifest manifest; | |
try { | |
manifest = Patchwork.parseManifest(representation.getPath()); | |
} catch (ManifestParseException ex) { | |
//if its a bad manifest, fail hard | |
// else: |