Commit 4dd9cc69 authored by Andrew Hazelden's avatar Andrew Hazelden

Initial Commit

parents
.DS_Store
Thumbs.db
FuRegisterClass('EightBall', CT_ConsoleUtility, {
REGS_Name = 'EightBall',
REGS_Category = 'Console',
REGS_OpDescription = 'Type in 8ball followed by your question to run a detailed quantum probability simulation of a Magic 8 Ball. Each time you enter 8ball in the Console you get a new and truly random fortune told.',
REGS_Company = "Andrew Hazelden",
REGS_URL = "http://www.andrewhazelden.com",
REG_Version = 100,
})
--[[
8ball v1.0 - 2018-01-17
by Andrew Hazelden
Email: andrew@andrewhazelden.com
Web: www.andrewhazelden.com
## Overview ##
The 'Magic 8 Ball' Console Fuse works in the Fusion Console tab. It is compatible with Fusion 9.0.1+.
Type in '8ball' followed by your question to run a detailed quantum probability simulation of a Magic 8 Ball. Each time you enter '8ball' in the Console you get a new and truly random fortune told.
This was inspired by the classic Fusion 6.4 era easter egg "8ball".
## Installation ##
Step 1. Copy the "8Ball.fuse" file to your Fusion user prefs "Fuses:/" folder.
Step 2. Restart Fusion to activate the 8Ball.fuse in the Console.
## Example ##
Type "8ball" and your question into the Console tab to get a new magic 8 ball style prediction.
8ball: Will Fuzionmonger X be released today?
or
8ball Will Fuzionmonger X be released today?
]]
function Create()
return true
end
function Attach(view)
return true
end
function Detach()
return true
end
function Select()
return true
end
BallAnswers ={
'It is certain',
'It is decidedly so',
'Without a doubt',
'Yes definitely',
'You may rely on it',
'As I see it, yes',
'Most likely',
'Outlook good',
'Yes',
'Signs point to yes',
'Reply hazy try again',
'Ask again later',
'Better not tell you now',
'Cannot predict now',
'Concentrate and ask again',
'Don\'t count on it',
'My reply is no',
'My sources say no',
'Outlook not so good',
'Very doubtful',
}
function HandleInput(str, active)
-- Scan the user input
if string.match(str:lower(), '^8ball') then
self:Print('> ' .. str .. '\n')
self:Print(str .. ' - ' .. BallAnswers[math.random(1, #BallAnswers)] .. '\n')
return true
end
return false
end
Atom {
Name = "Magic 8 Ball",
Category = "Fun",
Author = "Andrew Hazelden",
Version = 1.0,
Date = {2018, 1, 17},
Description = [[<p>The 'Magic 8 Ball' Console Fuse works in the Fusion Console tab. Type in "8ball" or '8ball:' followed by your question to run a detailed quantum probability simulation of a Magic 8 Ball. Each time you enter '8ball' in the Console you get a new and truly random fortune told.</p>
<p>Console Usage Example:</p>
<pre>8ball: Will Fuzionmonger X be released today?</pre>
or
<pre>8ball Will Fuzionmonger X be released today?</pre>]],
Deploy = {
"Fuses/Console/8Ball.fuse",
},
}
Atom {
Name = "Atomizer",
Category = "Scripts/Reactor",
Author = "Andrew Hazelden",
Version = 1.2,
Date = {2018, 1, 21},
Description = [[<p>Atomizer is an editing tool that simplifies the process of creating a Reactor "Atom" package.</p>
<p>For more information about the Atom format:<br>
https://www.steakunderwater.com/wesuckless/viewtopic.php?p=13229#p13229
</p>
]],
Deploy = {
"Scripts/Comp/Atomizer/Atomizer.lua",
"Scripts/Comp/Atomizer/Emoticons/arrow.png",
"Scripts/Comp/Atomizer/Emoticons/banana.png",
"Scripts/Comp/Atomizer/Emoticons/banghead.png",
"Scripts/Comp/Atomizer/Emoticons/biggrin.png",
"Scripts/Comp/Atomizer/Emoticons/bowdown.png",
"Scripts/Comp/Atomizer/Emoticons/buttrock.png",
"Scripts/Comp/Atomizer/Emoticons/cheer.png",
"Scripts/Comp/Atomizer/Emoticons/cheers.png",
"Scripts/Comp/Atomizer/Emoticons/confused.png",
"Scripts/Comp/Atomizer/Emoticons/cool.png",
"Scripts/Comp/Atomizer/Emoticons/cry.png",
"Scripts/Comp/Atomizer/Emoticons/eek.png",
"Scripts/Comp/Atomizer/Emoticons/evil.png",
"Scripts/Comp/Atomizer/Emoticons/exclaim.png",
"Scripts/Comp/Atomizer/Emoticons/geek.png",
"Scripts/Comp/Atomizer/Emoticons/idea.png",
"Scripts/Comp/Atomizer/Emoticons/lol.png",
"Scripts/Comp/Atomizer/Emoticons/mad.png",
"Scripts/Comp/Atomizer/Emoticons/mrgreen.png",
"Scripts/Comp/Atomizer/Emoticons/neutral.png",
"Scripts/Comp/Atomizer/Emoticons/nocheer.png",
"Scripts/Comp/Atomizer/Emoticons/popcorn.png",
"Scripts/Comp/Atomizer/Emoticons/question.png",
"Scripts/Comp/Atomizer/Emoticons/razz.png",
"Scripts/Comp/Atomizer/Emoticons/redface.png",
"Scripts/Comp/Atomizer/Emoticons/rolleyes.png",
"Scripts/Comp/Atomizer/Emoticons/sad.png",
"Scripts/Comp/Atomizer/Emoticons/smile.png",
"Scripts/Comp/Atomizer/Emoticons/surprised.png",
"Scripts/Comp/Atomizer/Emoticons/twisted.png",
"Scripts/Comp/Atomizer/Emoticons/ugeek.png",
"Scripts/Comp/Atomizer/Emoticons/whistle.png",
"Scripts/Comp/Atomizer/Emoticons/wink.png",
"Scripts/Comp/Atomizer/Emoticons/wip.png",
"Scripts/Comp/Atomizer/Images/asterisk.png",
"Scripts/Comp/Atomizer/Images/bold.png",
"Scripts/Comp/Atomizer/Images/calendar.png",
"Scripts/Comp/Atomizer/Images/close.png",
"Scripts/Comp/Atomizer/Images/code.png",
"Scripts/Comp/Atomizer/Images/create.png",
"Scripts/Comp/Atomizer/Images/folder.png",
"Scripts/Comp/Atomizer/Images/heading.png",
"Scripts/Comp/Atomizer/Images/image.png",
"Scripts/Comp/Atomizer/Images/italic.png",
"Scripts/Comp/Atomizer/Images/link.png",
"Scripts/Comp/Atomizer/Images/list.png",
"Scripts/Comp/Atomizer/Images/list_ordered.png",
"Scripts/Comp/Atomizer/Images/open.png",
"Scripts/Comp/Atomizer/Images/paragraph.png",
"Scripts/Comp/Atomizer/Images/quit.png",
"Scripts/Comp/Atomizer/Images/quote.png",
"Scripts/Comp/Atomizer/Images/reactor.png",
"Scripts/Comp/Atomizer/Images/refresh.png",
"Scripts/Comp/Atomizer/Images/save.png",
"Scripts/Comp/Atomizer/Images/strike.png",
"Scripts/Comp/Atomizer/Images/table.png",
"Scripts/Comp/Atomizer/Images/tint.png",
"Scripts/Comp/Atomizer/Images/underline.png",
},
}
Atom {
Name = "BarrelShape3D",
Category = "Tools/Creator",
Author = "Andrew Hazelden",
Version = 1.0,
Date = {2018, 1, 12},
Description = [[<p>BarrelShape3D is Fusion macro based remake of the classic Lightwave "Eagle in a Barrel" geometry (minus the eagle of course which should be connected to the EagleSceneInput input). In Lightwave this model was also known as "idiot.p" and it served a function similar to the Utah teapot model that existed in other 3D packages.</p>
<h3>Example Comp</h3>
<p>The "BarrelShape3D.comp" example comp creates a 4x4 grid of barrels. Their position is randomized slightly using the jitter control on the Duplicate3D nodes.</p>]],
Deploy = {
"Comps/BarrelShape3D.comp",
"Macros/Creator/BarrelShape3D.setting",
},
}
FuRegisterClass('Brainfuck', CT_ConsoleUtility, {
REGS_Name = 'Brainfuck',
REGS_Category = "Console",
REGS_OpDescription = "An interpreter to run the Brainfuck language in the console. For Brainfuck usage tips switch to the Console tab and type in bfq help.",
REGS_Company = "Andrew Hazelden",
REGS_URL = "http://www.andrewhazelden.com",
REG_Version = 100,
})
--[[
Brainfuck Fuse v1.0 - 2018-01-17
An interpreter to run the Brainfuck language in Fusion 9.0.1 from the console.
## Credits ##
Fusion Port by Andrew Hazelden
Email: andrew@andrewhazelden.com
Web: www.andrewhazelden.com
Brainfuck Interpreter original Lua source code by:
Greygraphics https://pastebin.com/u/Greygraphics
Original source code downloaded from: https://pastebin.com/1QGq7FZr
## Overview ##
Brainfuck is an esoteric programming language created in 1993 by Urban Mueller, and notable for its extreme minimalism.
The language consists of only eight simple commands and an instruction pointer.
While it is fully Turing-complete, it is not intended for practical use, but to challenge and amuse programmers.
https://en.wikipedia.org/wiki/Brainfuck
There are eight commands:
< - Decrease the pointer
> - Increase the pointer
+ - Increase the current cell value
- - Decrease the current cell value
[ - Declare a loop
] - Declare the end of a loop
. - Display the current cell value in ASCII
, - Read the user's input into the cell
A loop gets executed when the current cell has a value greater than zero. Cells overflow and underflow. The pointer does so too.
Cell range: 0-255
Pointer range: 1-30001
For Brainfuck usage details type the following text in the Console:
bfq help
Brainfuck Example 1 (Hello World):
bfq ++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.
Brainfuck Example 2: (If you see this message, the interpreter works!)
bfq +++++[->+++++<]>+++++++..<++++++[->++++++<]>+++++.<+++++[->+++++<]>++++.<++++++++[->--------<]>------.<+++++++++[->+++++++++<]>++++++++.<+++[->---<]>-.<>++++++.<+++++++++[->---------<]>----.<+++++++++[->+++++++++<]>++.<+++[->---<]>-----.<>.<++++++++[->--------<]>-----.<+++++++++[->+++++++++<]>+++.<+++[->---<]>---.<>+.<+++[->+++<]>+.<+++++++++[->---------<]>--.<++++++++[->++++++++<]>+++++++++++++.<>--------.<+++[->+++<]>+++++.<>.<++++[->----<]>--.<>++++++.<>--.<+++++++[->-------<]>--------.<+++[->---<]>---.<+++++++++[->+++++++++<]>+++.<+++[->---<]>---.<>---.<++++++++[->--------<]>-----.<++++++++[->++++++++<]>+++++++++.<>+++++.<>++++++.<+++[->---<]>------.<+++[->+++<]>++++.<>--.<>++.<+++[->---<]>----.<+++[->+++<]>++++++.<+++[->---<]>------.<+++[->+++<]>++++.<+++++++++[->---------<]>-.<+++++++++[->+++++++++<]>++++++.<>--------.<>+++.<>-------.<>++++++++.<+++++++++[->---------<]>-.<++++[->----<]>-------.<
## Notes: ##
The variable nSize defines the size of the memory array which has a default size of 30000 (1 - 30001)
## Debugging View ##
"/Applications/Blackmagic Fusion 9/Fusion.app/Contents/MacOS/Fusion"
]]