IntelligenceModding / Advanced-Peripherals-Features

A place for the feature request for Advanced Peripherals
0 stars 1 forks source link

new RS / ME Bridge functions #51

Open gamenTV opened 2 years ago

gamenTV commented 2 years ago

Describe your idea

Some new functions for the RS / ME Bridges would be nice:

probably not the best function names but i guess to make clear what i mean it's fine :)

Describe alternatives you've considered if you've any

No response

Additional context

No response

Linked Issues

No response

SLASHLogin commented 2 years ago

It would be nice to add methods which are present in uecasm's mod. Missing methods are:

SirEdvin commented 2 years ago

You want API interface compatibility?

SirEndii commented 2 years ago

It would be nice to add methods which are present in uecasm's mod. Missing methods are:

  • .isConnected()
  • .getEnergyUsage()
  • .getStorages()
  • .getItem(item[, compareNBT[, evenIfZero]])
  • .getFluid(fluid[, compareNBT[, evenIfZero]])
  • .getPatterns([item])
  • .getFluidPatterns([fluid])
  • .hasPattern(item)
  • .hasFluidPattern(fluid)
  • .getPattern(item)
  • .getFluidPattern(fluid)
  • .getTasks()
  • .scheduleTask(item[, count[, canSchedule]])
  • .scheduleFluidTask(fluid[, amount[, canSchedule]])
  • .cancelTask(item)
  • .cancelFluidTask(fluid)
  • .extractFluid(fluid[, amount[, direction]])

Take a look at the documentation: https://docs.srendi.de/peripherals/me_bridge/ Some of your requested functions does already support the me bridge

SLASHLogin commented 2 years ago

It would be nice to add methods which are present in uecasm's mod. Missing methods are:

  • .isConnected()
  • .getEnergyUsage()
  • .getStorages()
  • .getItem(item[, compareNBT[, evenIfZero]])
  • .getFluid(fluid[, compareNBT[, evenIfZero]])
  • .getPatterns([item])
  • .getFluidPatterns([fluid])
  • .hasPattern(item)
  • .hasFluidPattern(fluid)
  • .getPattern(item)
  • .getFluidPattern(fluid)
  • .getTasks()
  • .scheduleTask(item[, count[, canSchedule]])
  • .scheduleFluidTask(fluid[, amount[, canSchedule]])
  • .cancelTask(item)
  • .cancelFluidTask(fluid)
  • .extractFluid(fluid[, amount[, direction]])

Take a look at the documentation: https://docs.srendi.de/peripherals/me_bridge/ Some of your requested functions does already support the me bridge

Thanks, I've crossed out the one that's indeed already implemented. Also, the .getItem(item[, compareNBT[, evenIfZero]]) is implemented, however it does not let you choose to compare NBT or not. Additionally, if there is no matching items, it will return nil by default. I think it would be nice to give the user an option to choose whether to return item information even if there are zero items inside the storage system. Similarly, there's .scheduleTask(item[, count[, canSchedule]]) which is equal to craftItem(table item) but you can't "preview" the task.

SirEndii commented 2 years ago

Moved to 0.7.2r

itzTheMeow commented 2 years ago

IStorageDiskManager in the API and IStorageDisk.getCapacity can help with getMaxItemDiskStorage and getMaxFluidDiskStorage

IExternalStorage could help with a new function to see total space including disks and external storage.

SirEndii commented 2 years ago

We added some of these functions in 0.7.3r Some of these are a little complex, so I didn't added them in 0.7.3r

Things that are not implemented:

SLASHLogin commented 2 years ago

Thanks, that's still something

SirEndii commented 6 months ago

We added some of these functions in 0.7.3r Some of these are a little complex, so I didn't added them in 0.7.3r

Things that are not implemented:

  • .getItem(item[, compareNBT[, evenIfZero]])
  • .getFluid(fluid[, compareNBT[, evenIfZero]]) These two functions are implemented, but not with these parameters
  • .getFluidPatterns([fluid])
  • .hasPattern(item)
  • .hasFluidPattern(fluid)
  • .getFluidPattern(fluid)
  • .getTasks()
  • .cancelTask(item)
  • .cancelFluidTask(fluid)
  • .extractFluid(fluid[, amount[, direction]])

Looking through this now 2 years later...

The ME and RS Bridge now only need equivalents of cancelTask and getTasks There are functions to get the patterns, get items with filters and extract fluids

The last of them and even more will be added to 0.8