Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --I am the bone of my noteskin
- --Arrows are my body, and explosions are my blood
- --I have created over a thousand noteskins
- --Unknown to death
- --Nor known to life
- --Have withstood pain to create many noteskins
- --Yet these hands will never hold anything
- --So as I pray, Unlimited Stepman Works
- local ret = ... or {};
- --Defining on which direction the other directions should be bassed on
- --This will let us use less files which is quite handy to keep the noteskin directory nice
- --Do remember this will Redirect all the files of that Direction to the Direction its pointed to
- --If you only want some files to be redirected take a look at the "custom hold/roll per direction"
- ret.RedirTable =
- {
- Up = "Down",
- Down = "Down",
- Left = "Down",
- Right = "Down",
- UpLeft = "Down",
- UpRight = "Down",
- };
- -- <
- --Between here we usally put all the commands the noteskin.lua needs to do, some are extern in other files
- --If you need help with lua go to http://kki.ajworld.net/lua/ssc/Lua.xml there are a bunch of codes there
- --Also check out commen it has a load of lua codes in files there
- --Just play a bit with lua its not that hard if you understand coding
- --But SM can be an ass in some cases, and some codes jut wont work if you dont have the noteskin on FallbackNoteSkin=common in the metric.ini
- local OldRedir = ret.Redir;
- ret.Redir = function(sButton, sElement)
- sButton, sElement = OldRedir(sButton, sElement);
- --We want to use custom hold/roll per direction, but
- --Keep global hold/roll heads and explosions.
- if not string.find(sElement, "Head") and
- not string.find(sElement, "Explosion") then
- if string.find(sElement, "Hold") or
- string.find(sElement, "Roll") then
- if Var "Button" == "Right" and string.find(sElement, "Body")
- then sButton = "Left";
- end
- if Var "Button" == "Up" and string.find(sElement, "Body")
- then sButton = "Down";
- end
- if Var "Button" == "Right" and string.find(sElement, "Bottom")
- then sButton = "Left";
- end
- if Var "Button" == "Up" and string.find(sElement, "Bottom")
- then sButton = "Down";
- -- sElement = string.find(sElement, "Top");
- end
- return sButton, sElement;
- end
- end
- sButton = ret.RedirTable[sButton];
- --Making Roll Head/Explosion fallback on Hold
- if sElement == "Roll Head Inactive"
- then
- sElement = "Hold Head Inactive";
- end
- if sElement == "Roll Head Active"
- then
- sElement = "Hold Head Active";
- end
- if sElement == "Roll Explosion"
- then
- sElement = "Hold Explosion";
- end
- return sButton, sElement;
- end
- local OldFunc = ret.Load;
- function ret.Load()
- local t = OldFunc();
- --Explosion should not be rotated; it calls other actors.
- if Var "Element" == "Explosion" then
- t.BaseRotationZ = nil;
- end
- local workyoupieceofshit = var "Element";
- if Var "Button" == "Right" and string.find(workyoupieceofshit, "Body") then
- t.InitCommand=cmd(zoomx,-1);
- return workyoupieceofshit;
- end
- --[[ if Var "Button" == "Up" and string.find(var "Element", "Body")
- then t.InitCommand=cmd(zoomy,-1);
- end
- if Var "Button" == "Right" and string.find(var "Element", "Bottom")
- then t.InitCommand=cmd(zoomx,-1);
- end
- if Var "Button" == "Up" and string.find(var "Element", "Bottom")
- then t.InitCommand=cmd(zoomy,-1);
- end --]]
- return t;
- end
- -- >
- -- Parts of noteskins which we want to rotate
- ret.PartsToRotate =
- {
- ["Receptor"] = true,
- ["Tap Explosion Bright"] = true,
- ["Tap Explosion Dim"] = true,
- ["Tap Note"] = true,
- ["Tap Fake"] = true,
- ["Tap Lift"] = true,
- ["Tap Addition"] = true,
- ["Hold Explosion"] = true,
- ["Hold Head Active"] = true,
- ["Hold Head Inactive"] = true,
- ["Roll Explosion"] = true,
- ["Roll Head Active"] = true,
- ["Roll Head Inactive"] = true,
- };
- -- Defined the parts to be rotated at which degree
- ret.Rotate =
- {
- Up = 180,
- Down = 0,
- Left = 90,
- Right = -90,
- UpLeft = 135,
- UpRight = 225,
- };
- -- Parts that should be Redirected to _Blank.png
- -- you can add/remove stuff if you want
- ret.Blank =
- {
- ["Hold Tail Active"] = true,
- ["Hold Tail Inactive"] = true,
- ["Roll Tail Active"] = true,
- ["Roll Tail Inactive"] = true,
- };
- -- dont forget to close the ret cuz else it wont work ;>
- return ret;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement