Maescool / Catacomb-Snatch

Mojang's Humble bundle source
Other
295 stars 99 forks source link

Feature/mods #938

Closed Tipaa closed 12 years ago

Tipaa commented 12 years ago

Features added:

\ Abstracted Downloader for multiple downloader types --Optimized speed of download by 18 times (speedtested) --Refactored and simplified some code

***Added in dynamic mod loading system with support for Java, Javascript, Python and Ruby --Lots and lots of features (<-- just can't remember them all) ----Entity Registering ----OnTick-style events ----Weapon Registering ----More --Very Big --Has javadocs already, along with templates

**Abstracted and refactored Console and Commands --Console much cleaner --Each command has a separate class for easier manipulation/more functionality --Moved allweapons to "/give all"

*Enabled Console at main menu --Prevented menustack from being modified while console is open

**Probably more I have forgotten

Flafla2 commented 12 years ago

Whoa.

+1!

Maescool commented 12 years ago

remove lib/cachedir/ and gitignore it pls

Maescool commented 12 years ago

a new merge will be needed since the new screen abstraction has been added

Tipaa commented 12 years ago

Sorry about the merge fails, I'm still new to git :)

I'd also like to replace that if(debug) bit, but I couldn't get options to work for it.

Edit: Got it working now, cleaned up a little.

Tipaa commented 12 years ago

Merged with latest graphics abstraction and cleaned up unused/duplicate classes

master-lincoln commented 12 years ago

You are using different indentation styles across your changes. We agreed to use 1TBS (see wiki). For example in EmptyEntity, SpawnerEntityMod, ...

master-lincoln commented 12 years ago

Could you tell us a little about the libraries you introduce and how the mods in other languages work. Will data types be converted to language native types if possible? You only included a java example mod do you have a basic example for another language (not only printing on command line)?.

master-lincoln commented 12 years ago

The changes from #939 would need to be adapted for this one.

Tipaa commented 12 years ago

The libraries all conform to JSR 233, the scripting interface. I currently don't have many examples in scripting languages, since I am not very good at JS, Py or Ruby. If someone else can make something flashy work better, I'd be very grateful, but my efforts have proved fruitless for a bit.

The best examples would be at http://dl.dropbox.com/u/26626116/Catacomb-Snatch/mod_FPS_1.js http://dl.dropbox.com/u/26626116/Catacomb-Snatch/mod_ConstantMusic.js

Used these for testing mod subscriptions