Files
itgmania212121/NoteSkins/dance/easyV2/NoteSkin.lua
T
Jousway 5378b837ed Two easy to read complete opensource Noteskins called exact and easy.
Play around with them and ajust anything you want
There are made to test and increase the easy ness of reading simfiles with
certain notesins, In this case one for accuracy which is "exact"
and one for cluster simfiles which is "easy"

Easy is made to be easy to see with simfiles that are clustered
for example an simfile with an high bpm and a load of notes coming at the same
time, with an load of noteskins which have nice effects and its hard to read
these paterns.
so basicly you can read the file with clustered patterns which some people
including me have trouble with.

Exact is to test the accuracy, increasing your scores with Flawless, so people
get higher scores on easier files.
2012-04-12 20:19:44 +02:00

138 lines
3.7 KiB
Lua

--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 =
{
--PIU
Center = "Center",
DownLeft = "DownLeft", -- for PIU and dance
DownRight = "DownLeft", -- for PIU and dance
UpLeft = "DownLeft",
UpRight = "DownLeft",
--Dance
Down = "Down",
Up = "Down",
Left = "Down",
Right = "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);
sButton = ret.RedirTable[sButton];
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" == "Down" or Var "Button" == "Up" or Var "Button" == "Left" or Var "Button" == "Right" then
sButton = "Down";
else
sButton = "Center";
end
end
end
-- Instead of separate hold heads, use the tap note graphics.
if sElement == "Hold Head Inactive" or
sElement == "Hold Head Active" or
sElement == "Roll Head Inactive" or
sElement == "Roll Head Active" or
sElement == "Tap Fake"
then
sElement = "Tap Note";
end
if sElement == "Tap Explosion Dim" or
sElement == "Hold Explosion" or
sElement == "Roll Explosion"
then
sElement = "Tap Explosion Bright";
end
if sElement == "Tap Mine"
then
sButton = "Down";
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
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 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 =
{
--PIU
Center = 0,
DownLeft = 0,
DownRight = -90,
UpLeft = 90,
UpRight = 180,
--Dance
Down = 0,
Up = 180,
Left = 90,
Right = -90,
};
-- Parts that should be Redirected to _Blank.png
-- you can add/remove stuff if you want
ret.Blank =
{
["HitMine Explosion"] = true,
["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;