SpaceNote
SpaceNote
DisabledStrum=false
Hellmode=false
end
function onCreatePost()
for i = 0, getProperty('unspawnNotes.length')-1 do
if getPropertyFromGroup('unspawnNotes', i, 'noteType') == 'SpaceNote'
then
setPropertyFromGroup('unspawnNotes', i, 'texture',
"Bronzong_Gong_mechanic")
setPropertyFromGroup('unspawnNotes', i, 'noteData', 4)
if Hellmode then
setPropertyFromGroup('unspawnNotes', i, 'multAlpha', 0)
else
setPropertyFromGroup('unspawnNotes', i, 'multAlpha', 1)
end
setPropertyFromGroup('unspawnNotes', i, 'mustPress', true)
setPropertyFromGroup('unspawnNotes', i, 'noteSplashDisabled', true)
if(Note.prevNote != null){
Note.animation.play('spacebarholdend',true);
if(Note.prevNote.isSustainNote){
Note.prevNote.animation.play('spacebarhold',true);
}
}
]])
setPropertyFromGroup('unspawnNotes', i, 'offsetX', 8)
else
runHaxeCode([[
var Note:Note=game.unspawnNotes[]]..i..[[];
Note.animation.addByPrefix('spaceScroll', "spacebar0");
Note.animation.play('spaceScroll',true);
]])
setPropertyFromGroup('unspawnNotes', i, 'offsetX', -138)
end
if DisabledStrum then
setPropertyFromGroup('unspawnNotes', i, 'multAlpha', 0)
setPropertyFromGroup('unspawnNotes', i, 'blockHit', true)
setPropertyFromGroup('unspawnNotes', i, 'ignoreNote', true)
setPropertyFromGroup('unspawnNotes', i, 'noteData', 2)
end
end
end
game.playerStrums.add(NewStrum);
NewStrum.downScroll= ClientPrefs.downScroll;
game.strumLineNotes.add(NewStrum);
setVar("SpaceBar",NewStrum);
]])
local Offset=100
if middlescroll then
Offset=268
end
for i=0,4 do
setPropertyFromGroup('opponentStrums',i,'x',(160 * 0.7) * i+50+
((screenWidth / 2) * 1)+3000)
setPropertyFromGroup('playerStrums',i,'x',(160 * 0.7) * i+50+
((screenWidth / 2) * 0)-40+Offset)
if i>1 then
setPropertyFromGroup('playerStrums',i,'x',(160 * 0.7) * i+50+
((screenWidth / 2) * 0)+220+Offset)
end
if i==4 then
setPropertyFromGroup('playerStrums',i,'x',(160 * 0.7) * 3+50+
((screenWidth / 2) * 0)-60+Offset)
end
end
end
function Pressed()
if runHaxeCode("return getVar(\"SpaceBar\") != null") then
if getProperty('SpaceBar.animation.curAnim.name')~='confirm' then
runHaxeCode('getVar("SpaceBar").playAnim("pressed", true);')
setProperty('SpaceBar.resetAnim',0)
end
end
end
function GoodSpaceHit(NoteID)
if not getPropertyFromGroup('notes',NoteID,'isSustainNote') then
setProperty('combo',getProperty('combo')+1)
local ratingOffset=getPropertyFromClass('ClientPrefs','ratingOffset')
local Rating= (getPropertyFromGroup('notes',NoteID,'strumTime') -
getSongPosition() + ratingOffset)
local List={}
debugPrint(Rating)
for i=0,getProperty('ratingsData.length')-1 do
table.insert(List,getProperty('ratingsData['..i..'].hitWindow'))
end
RatingScore=math.abs(Rating)
setPropertyFromGroup('notes',NoteID,'ratingMod',RatingScore)
if RatingScore <= List[1] then
setPropertyFromGroup('notes',NoteID,'rating','sick')
setProperty('sicks',getProperty('sicks')+1)
elseif RatingScore <= List[2] then
setPropertyFromGroup('notes',NoteID,'rating','good')
setProperty('goods',getProperty('goods')+1)
elseif RatingScore <= List[3] then
setPropertyFromGroup('notes',NoteID,'rating','bad')
setProperty('bads',getProperty('bads')+1)
elseif RatingScore <= List[4] then
setPropertyFromGroup('notes',NoteID,'rating','shit')
setProperty('shits',getProperty('shits')+1)
else
setPropertyFromGroup('notes',NoteID,'rating','shit')
setProperty('shits',getProperty('shits')+1)
end
end
callOnLuas('goodNoteHit',
{NoteID,4,'SpaceNote',getPropertyFromGroup('notes',NoteID,'isSustainNote')})
runHaxeCode([[
if(getVar("SpaceBar") != null){
getVar("SpaceBar").playAnim("confirm", true);
getVar("SpaceBar").resetAnim=0;
}
]])
setPropertyFromGroup('notes',NoteID,'wasGoodHit',true)
if not getPropertyFromGroup('notes',NoteID,'isSustainNote') then
runHaxeCode([[
var note:Note=game.notes.members[]]..NoteID..[[];
if(note != null){
note.kill();
game.notes.remove(note, true);
note.destroy();
}
]])
end
end