function PlungerAnimation takes nothing returns nothing
call SetUnitFlyHeightBJ(GetEnumUnit(), - 55.25, 400.00)
endfunction
function BPM takes real rate returns nothing
//if (udg_SongsPerformed > 0) then
set udg_BPM = rate + (.80 * I2R(udg_SongsPerformed))
//else
// set udg_BPM = rate
//endif
call ConditionalTriggerExecute(gg_trg_SetNoteLengths)
endfunction
function XNoteLength takes integer length returns nothing
if ( length == 0 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_NoteVariableLength
return
endif
if ( length == 1 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_NoteFull
return
endif
if ( length == 2 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_NoteHalf
return
endif
if ( length == 4 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_Note4th
return
endif
if ( length == 8 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_Note8th
return
endif
if ( length == 12 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_Note12th
return
endif
if ( length == 16 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_Note16th
return
endif
if ( length == 24 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_Note24th
return
endif
if ( length == 32 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_Note32nd
return
endif
if ( length == 48 ) then
set udg_XGameNoteLength[udg_IntWorkingNote] = udg_Note32nd
return
endif
endfunction
function Rest takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
//SET NOTES FUNCTIONS
//=============================================================================
function G takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 1
set udg_XChordShape[udg_IntWorkingNote] = 1
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function R takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 2
set udg_XChordShape[udg_IntWorkingNote] = 2
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function Y takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 3
set udg_XChordShape[udg_IntWorkingNote] = 4
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function B takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 4
set udg_XChordShape[udg_IntWorkingNote] = 8
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function O takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 5
set udg_XChordShape[udg_IntWorkingNote] = 16
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
//SET 2 CHORDS FUNCTIONS
//=============================================================================
//GREEN CHORDS
//==================
function GR takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 1
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 2
set udg_XChordShape[udg_IntWorkingNote] = 3
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function GY takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 1
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 3
set udg_XChordShape[udg_IntWorkingNote] = 5
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function GB takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 1
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 4
set udg_XChordShape[udg_IntWorkingNote] = 9
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function GO takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 1
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 5
set udg_XChordShape[udg_IntWorkingNote] = 17
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
//RED CHORDS
//==================
function RY takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 2
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 3
set udg_XChordShape[udg_IntWorkingNote] = 6
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function RB takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 2
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 4
set udg_XChordShape[udg_IntWorkingNote] = 10
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function RO takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 2
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 5
set udg_XChordShape[udg_IntWorkingNote] = 18
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
//YELLOW CHORDS
//==================
function YB takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 3
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 4
set udg_XChordShape[udg_IntWorkingNote] = 12
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
function YO takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 3
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 5
set udg_XChordShape[udg_IntWorkingNote] = 20
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
//BLUE CHORD
//==================
function BO takes integer length returns nothing
if ( udg_SongDifficulty == 4 ) then
// set udg_XGameNoteColor[udg_IntWorkingNote] = 4
// set udg_XGameNoteChordColor1[udg_IntWorkingNote] = 5
set udg_XChordShape[udg_IntWorkingNote] = 24
call XNoteLength(length)
endif
set udg_IntWorkingNote = udg_IntWorkingNote + 1
endfunction
//SET 3 CHORDS FUNCTIONS
//=============================================================================
//havent had to do it yet lol
//==================
Name | Type | is_array | initial_value |
AudioCalibration | real | No | 2.10 |
BPM | real | No | 120.00 |
BulbCounter | integer | No | |
CameraLockUnit | unit | No | |
ChordDetectionInt | integer | No | |
ChordShapeTemp | integer | No | |
FretPressed | boolean | Yes | |
GenerateNoteIndex | integer | No | |
Hashtable | hashtable | No | |
IntWorkingNote | integer | No | |
IsExpert | boolean | No | |
LightbulbDistance | real | No | 0.00 |
LightBulbs | unit | Yes | |
LitBulbCount | integer | No | |
LongNoteTimers | timer | Yes | |
Multiplier | integer | No | 1 |
MultiplierText | texttag | No | |
MusicBacking | sound | Yes | |
MusicDelayTimer | timer | No | |
MusicGuitar | sound | Yes | |
NoFail | boolean | No | true |
Note12th | real | No | |
Note16th | real | No | |
Note24th | real | No | |
Note32nd | real | No | |
Note48th | real | No | |
Note4th | real | No | |
Note8th | real | No | |
NoteCustomLength | real | No | 1.00 |
NoteFull | real | No | |
NoteGapTimer | timer | No | |
NoteHalf | real | No | |
NoteHammerOn | boolean | No | |
NoteMissRandom | integer | No | |
NotesInChord | group | Yes | |
NoteStarPower | boolean | No | |
NotesToHit | group | No | |
NoteTimer | timer | Yes | |
NoteType | unitcode | No | |
NoteVariableLength | real | No | |
PlayableNote | integer | No | |
PlayerChordShape | integer | No | |
PlungerFound | boolean | No | |
PlungerLowerTimer | timer | No | |
Plungers | effect | Yes | |
PreviousNoteMissed | boolean | No | |
RockLevel | integer | No | 120 |
RockMeterGreen | group | No | |
RockMeterMoveDistance | real | No | |
RockMeterMovePoints | location | Yes | |
RockMeterPartitions | unit | Yes | |
RockMeterRed | group | No | |
RockMeterYellow | group | No | |
Score | integer | No | |
ScoreText | texttag | No | |
ShakeTimer | timer | No | |
SignatureDenominator | integer | No | 4 |
SignatureNumerator | integer | No | 4 |
SongArtist | string | No | |
SongChoiceIndex | integer | No | 1 |
SongDifficulty | integer | No | |
SongName | string | No | |
SongsPerformed | integer | No | |
SongStarted | boolean | No | |
SongYear | string | No | |
StarPowerPressed | boolean | Yes | |
Streak | integer | No | |
StreakText | texttag | No | |
StrumPressed | boolean | No | |
TitleBoard | multiboard | No | |
VideoCalibration | real | No | 1.60 |
XChordShape | integer | Yes | 0 |
XGameNoteHammerOn | boolean | Yes | |
XGameNoteLength | real | Yes | |
XGameNoteSustainBool | boolean | Yes | |
XGameNoteSustainLength | real | Yes |
function Trig_ChartX_Knocking_Actions takes nothing returns nothing
set udg_SignatureNumerator = 4
set udg_SignatureDenominator = 4
set udg_IntWorkingNote = 0
set udg_SongDifficulty = 4
set udg_MusicBacking[1] = gg_snd_KnockinSong
set udg_MusicGuitar[1] = gg_snd_KnockinGuitar
// ====
call BPM(147)
call Rest(1)
call Rest(1)
// Intro
call Rest(8)
call BO(8)
call YO(8)
call R(8)
call YB(8)
call RB(8)
call R(8)
call G(8)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(8)
call Rest(2)
call Rest(8)
call G(8)
call R(8)
call G(8)
call Y(8)
call G(8)
call B(4)
call BPM(148.5)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call BPM(151)
call Rest(8)
call RY(4)
call R(8)
call YB(8)
call RB(8)
call R(8)
call G(8)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call BO(8)
call YO(8)
call R(8)
call YB(8)
call RB(8)
call G(8)
call GY(8)
call BPM(152)
call Rest(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call BO(8)
call B(8)
call O(8)
call B(4)
call GB(8)
call G(8)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call G(8)
call R(8)
call G(8)
call Y(8)
call G(8)
call B(4)
call BPM(151)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call G(8)
call GY(4)
call GY(8)
call GY(8)
call GY(8)
call G(8)
// Verse 1
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(4)
call GY(4)
call Rest(8)
call GY(8)
call GY(4)
call Rest(4)
call Rest(8)
call BO(8)
call YO(8)
call R(8)
call Y(8)
call R(8)
call G(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BPM(150.5)
call BO(8)
call YB(8)
call Rest(2)
call G(8)
call RB(8)
call Rest(4)
call R(8)
call Y(8)
call B(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(8)
call Rest(4)
call G(8)
call G(8)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(8)
call Y(8)
call YB(4)
call Rest(4)
call Rest(8)
call BO(8)
call BO(8)
call B(8)
call BO(8)
call YO(8)
call YB(8)
call Y(8)
call R(8)
call G(8)
call YB(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(8)
call Y(8)
call G(4)
call Rest(8)
call Y(8)
call B(4)
call Rest(4)
call BPM(152)
call Rest(8)
call BO(8)
call YO(8)
call YB(8)
call Y(8)
call R(8)
call G(8)
call G(8)
// Verse 2
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(4)
call Rest(8)
call RY(4)
call G(8)
call GY(4)
call Rest(4)
call Rest(8)
call G(8)
call YB(4)
call Y(8)
call YB(8)
call YB(8)
call G(8)
call YB(8)
call RB(8)
call RB(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call RY(8)
call YB(4)
call G(4)
call YB(4)
call RB(4)
call Rest(8)
call R(8)
call Y(8)
call B(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(8)
call Rest(2)
call G(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(1)
call YB(8)
call YB(4)
call G(8)
call YB(8)
call Y(8)
call R(8)
call Y(8)
call R(8)
call G(8)
call YB(4)
call RY(4)
call G(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(8)
call B(8)
// Chorus 1
call BPM(150)
call R(4)
call Rest(8)
call Y(8)
call B(4)
call R(4)
call BO(4)
call YO(4)
call Rest(4)
call Y(8)
call Y(8)
call BPM(148.5)
call YB(4)
call RB(4)
call Rest(8)
call R(8)
call Y(8)
call GY(4)
call G(8)
call Y(8)
call B(8)
call B(4)
call Rest(4)
call GY(4)
call Rest(4)
call GY(4)
call Rest(4)
call BO(4)
call YO(4)
call Rest(4)
call Rest(8)
call Rest(16)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(4)
call RB(4)
call Rest(8)
call R(8)
call Y(8)
call G(4)
call Y(8)
call G(8)
call G(8)
call Y(4)
call G(8)
call Y(8)
call GY(4)
call Rest(2)
call Rest(4)
call BO(4)
call YO(4)
call Rest(4)
call Rest(4)
call BPM(151.5)
call YB(4)
call RB(4)
call Rest(8)
call B(8)
call B(8)
call G(8)
call BPM(153)
call Rest(8)
call Y(8)
call GY(4)
call Rest(8)
call GY(8)
call GY(4)
// Verse 3
call BPM(152)
call Rest(8)
call BO(8)
call YO(8)
call Y(8)
call R(8)
call G(8)
call YB(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BPM(153)
call BO(8)
call YB(8)
call Rest(4)
call G(8)
call GR(4)
call GY(8)
call Rest(2)
call Y(4)
call Rest(4)
call Rest(8)
call YB(8)
call YB(8)
call Y(8)
call YB(8)
call R(8)
call RY(8)
call G(8)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call G(8)
call G(8)
call G(8)
call YB(4)
call RB(8)
call Rest(4)
call R(8)
call Y(8)
call B(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(16)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(8)
call G(8)
call R(8)
call G(8)
call R(8)
call BPM(152)
call G(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call G(8)
call G(8)
call G(8)
call YB(4)
call Y(8)
call BPM(151.5)
call GY(4)
call GY(8)
call GY(8)
call G(8)
call YB(8)
call YB(8)
call Y(8)
call YB(8)
call Y(8)
call R(8)
call YB(8)
call Y(8)
call R(8)
call R(8)
call G(8)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call G(8)
call G(8)
call G(8)
call B(4)
call RB(8)
// Chorus 2
call Rest(4)
call R(8)
call Y(8)
call B(8)
call B(8)
call Rest(4)
call B(4)
call Y(4)
call Rest(2)
call R(4)
call YO(4)
call Rest(8)
call YO(4)
call Rest(8)
call GY(4)
call G(8)
call G(8)
call GY(4)
call Rest(8)
call GY(4)
call GY(8)
call G(4)
call GY(4)
call Rest(8)
call BO(8)
call BO(8)
call YO(8)
call YO(4)
call Rest(4)
call Rest(8)
call YB(8)
call YB(8)
call RB(8)
call RB(4)
call Rest(4)
call RB(4)
call BPM(149.5)
call GY(8)
call G(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
call Y(8)
call Y(4)
call Rest(4)
call GY(4)
call GY(4)
call Rest(2)
call BO(4)
call YO(4)
call Rest(2)
call YB(4)
call RB(4)
call Rest(2)
call Rest(8)
call O(8)
call B(8)
call Y(8)
call B(8)
call Y(8)
call R(8)
call Y(4)
call Rest(8)
call G(4)
call GY(4)
call Rest(4)
call BO(4)
call YO(4)
call Rest(2)
call YB(4)
call RB(4)
call Rest(8)
call RB(8)
call YB(8)
call GY(8)
call BPM(151)
call Rest(8)
call GY(8)
call G(4)
call GY(4)
call Rest(8)
call Y(8)
// Chorus 3
call G(4)
call Y(8)
call G(8)
call GY(4)
call Rest(4)
call BO(4)
call YO(4)
call YO(4)
call Rest(4)
call R(8)
call RB(4)
call R(8)
call RB(4)
call Rest(4)
call BPM(149)
call Rest(8)
call G(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(8)
call B(4)
call Rest(4)
call BPM(151)
call Rest(8)
call G(4)
call GY(8)
call GY(4)
call Rest(4)
call Rest(8)
call YO(4)
call Y(8)
call YO(4)
call Rest(4)
call Rest(8)
call RB(4)
call R(8)
call RB(4)
call RB(4)
call Rest(8)
call GY(4)
call G(8)
call GY(4)
call RB(4)
call BPM(152.5)
call Rest(8)
call BO(4)
call B(8)
call BO(4)
call Rest(4)
call Rest(8)
call YO(4)
call Y(8)
call YO(4)
call Rest(4)
call Rest(8)
call RB(4)
call R(8)
call RB(8)
call RO(8)
call RB(4)
call Rest(8)
call G(8)
call G(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(8)
call Y(4)
call BPM(153)
call Rest(4)
call Rest(8)
call BO(8)
call B(8)
call BO(8)
call BO(8)
call BO(8)
call BO(4)
call Rest(8)
call YO(4)
call Y(8)
call YO(8)
call YO(8)
call YO(4)
call Rest(8)
call RB(4)
call R(8)
call RB(4)
call RB(4)
call G(8)
call GY(4)
call G(8)
call GY(4)
call GY(8)
call GY(8)
// Guitar Solo A
call BPM(154.5)
call Rest(1)
call BPM(155)
call Rest(1)
call Rest(1)
call BPM(154)
call Rest(4)
call B(2)
call Rest(4)
call R(1)
call BPM(157.5)
call Rest(4)
call Rest(8)
call B(8)
call Y(8)
call R(8)
call G(8)
call R(8)
call BPM(152)
call Rest(1)
call BPM(153)
call Rest(2)
call Y(8)
call B(8)
call O(8)
call O(8)
call BPM(152)
call Rest(8)
call B(8)
call Rest(2)
call Rest(4)
call Rest(8)
call O(8)
call B(8)
call B(8)
call Y(8)
call R(8)
call G(8)
call R(8)
call Rest(1)
call BPM(154)
call Rest(2)
call R(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(8)
call BPM(153)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(2)
call Rest(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(8)
call R(8)
call R(8)
call Rest(1)
// Guitar Solo B
call Rest(2)
call G(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(8)
call B(8)
call B(8)
call BPM(154.5)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(8)
call BPM(156)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(8)
call BPM(152.5)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(2)
call Rest(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(4)
call Rest(4)
call Rest(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(2)
call Rest(8)
call B(4)
call Rest(8)
call BPM(151.5)
call Y(8)
call R(8)
call Y(8)
call G(8)
call Rest(4)
call Rest(8)
call G(8)
call BPM(154.5)
call R(8)
call B(8)
call B(8)
call B(8)
call Rest(1)
call B(8)
call Y(8)
call B(8)
call O(8)
call BPM(153)
call Rest(8)
call B(8)
call Y(8)
call Y(8)
call Rest(2)
// Guitar Solo C
call Rest(2)
call G(8)
call R(8)
call Y(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(16)
call BPM(152)
call Rest(2)
call Rest(8)
call O(4)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
call Rest(4)
call R(4)
call B(4)
call R(8)
call Y(8)
call R(1)
call BPM(154)
call Rest(2)
call G(8)
call R(8)
call Y(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(4)
call B(4)
call Y(8)
call G(8)
call R(8)
call Y(8)
call BPM(153)
call Rest(8)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
call Rest(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(8)
call R(16)
call Rest(2)
call Rest(4)
call Rest(8)
call R(8)
call Y(8)
call B(8)
call O(8)
call B(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(8)
call R(8)
call B(8)
// Guitar Solo D
call BPM(154)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call BPM(155)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call BPM(152.5)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call BPM(154.5)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(156)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(156.5)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(158)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(156)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(4)
// Outro
call BPM(152.75)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(8)
call BPM(152)
call Rest(8)
call R(8)
call B(8)
call R(8)
call B(4)
call O(4)
call BPM(153.5)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(4)
call R(8)
call B(8)
call R(8)
call B(4)
call O(4)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(4)
call R(8)
call B(8)
call R(8)
call B(4)
call O(4)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(4)
call R(8)
call B(4)
call O(4)
call Rest(2)
call Rest(1)
endfunction
//===========================================================================
function InitTrig_ChartX_Knocking takes nothing returns nothing
set gg_trg_ChartX_Knocking = CreateTrigger( )
call TriggerAddAction( gg_trg_ChartX_Knocking, function Trig_ChartX_Knocking_Actions )
endfunction
function Trig_SyncTrackKnocking_Actions takes nothing returns nothing
set udg_SignatureNumerator = 4
set udg_SignatureDenominator = 4
set udg_IntWorkingNote = 0
set udg_SongDifficulty = 4
set udg_MusicBacking[1] = gg_snd_KnockinSong
set udg_MusicGuitar[1] = gg_snd_KnockinGuitar
// ====
call BPM(147)
call Rest(1)
call Rest(1)
// Intro
call Rest(8)
call BO(8)
call YO(8)
call R(8)
call YB(8)
call RB(8)
call R(8)
call G(8)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(8)
call Rest(2)
call Rest(8)
call G(8)
call R(8)
call G(8)
call Y(8)
call G(8)
call B(4)
call BPM(148.5)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call BPM(151)
call Rest(8)
call RY(4)
call R(8)
call YB(8)
call RB(8)
call R(8)
call G(8)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call BO(8)
call YO(8)
call R(8)
call YB(8)
call RB(8)
call G(8)
call GY(8)
call BPM(152)
call Rest(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call BO(8)
call B(8)
call O(8)
call B(4)
call GB(8)
call G(8)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call G(8)
call R(8)
call G(8)
call Y(8)
call G(8)
call B(4)
call BPM(151)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call G(8)
call GY(4)
call GY(8)
call GY(8)
call GY(8)
call G(8)
// Verse 1
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(4)
call GY(4)
call Rest(8)
call GY(8)
call GY(4)
call Rest(4)
call Rest(8)
call BO(8)
call YO(8)
call R(8)
call Y(8)
call R(8)
call G(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BPM(150.5)
call BO(8)
call YB(8)
call Rest(2)
call G(8)
call RB(8)
call Rest(4)
call R(8)
call Y(8)
call B(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(8)
call Rest(4)
call G(8)
call G(8)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(8)
call Y(8)
call YB(4)
call Rest(4)
call Rest(8)
call BO(8)
call BO(8)
call B(8)
call BO(8)
call YO(8)
call YB(8)
call Y(8)
call R(8)
call G(8)
call YB(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(8)
call Y(8)
call G(4)
call Rest(8)
call Y(8)
call B(4)
call Rest(4)
call BPM(152)
call Rest(8)
call BO(8)
call YO(8)
call YB(8)
call Y(8)
call R(8)
call G(8)
call G(8)
// Verse 2
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(4)
call Rest(8)
call RY(4)
call G(8)
call GY(4)
call Rest(4)
call Rest(8)
call G(8)
call YB(4)
call Y(8)
call YB(8)
call YB(8)
call G(8)
call YB(8)
call RB(8)
call RB(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call RY(8)
call YB(4)
call G(4)
call YB(4)
call RB(4)
call Rest(8)
call R(8)
call Y(8)
call B(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(8)
call Rest(2)
call G(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(1)
call YB(8)
call YB(4)
call G(8)
call YB(8)
call Y(8)
call R(8)
call Y(8)
call R(8)
call G(8)
call YB(4)
call RY(4)
call G(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(8)
call B(8)
// Chorus 1
call BPM(150)
call R(4)
call Rest(8)
call Y(8)
call B(4)
call R(4)
call BO(4)
call YO(4)
call Rest(4)
call Y(8)
call Y(8)
call BPM(148.5)
call YB(4)
call RB(4)
call Rest(8)
call R(8)
call Y(8)
call GY(4)
call G(8)
call Y(8)
call B(8)
call B(4)
call Rest(4)
call GY(4)
call Rest(4)
call GY(4)
call Rest(4)
call BO(4)
call YO(4)
call Rest(4)
call Rest(8)
call Rest(16)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(4)
call RB(4)
call Rest(8)
call R(8)
call Y(8)
call G(4)
call Y(8)
call G(8)
call G(8)
call Y(4)
call G(8)
call Y(8)
call GY(4)
call Rest(2)
call Rest(4)
call BO(4)
call YO(4)
call Rest(4)
call Rest(4)
call BPM(151.5)
call YB(4)
call RB(4)
call Rest(8)
call B(8)
call B(8)
call G(8)
call BPM(153)
call Rest(8)
call Y(8)
call GY(4)
call Rest(8)
call GY(8)
call GY(4)
// Verse 3
call BPM(152)
call Rest(8)
call BO(8)
call YO(8)
call Y(8)
call R(8)
call G(8)
call YB(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BPM(153)
call BO(8)
call YB(8)
call Rest(4)
call G(8)
call GR(4)
call GY(8)
call Rest(2)
call Y(4)
call Rest(4)
call Rest(8)
call YB(8)
call YB(8)
call Y(8)
call YB(8)
call R(8)
call RY(8)
call G(8)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call G(8)
call G(8)
call G(8)
call YB(4)
call RB(8)
call Rest(4)
call R(8)
call Y(8)
call B(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(16)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(8)
call G(8)
call R(8)
call G(8)
call R(8)
call BPM(152)
call G(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call G(8)
call G(8)
call G(8)
call YB(4)
call Y(8)
call BPM(151.5)
call GY(4)
call GY(8)
call GY(8)
call G(8)
call YB(8)
call YB(8)
call Y(8)
call YB(8)
call Y(8)
call R(8)
call YB(8)
call Y(8)
call R(8)
call R(8)
call G(8)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call G(8)
call G(8)
call G(8)
call B(4)
call RB(8)
// Chorus 2
call Rest(4)
call R(8)
call Y(8)
call B(8)
call B(8)
call Rest(4)
call B(4)
call Y(4)
call Rest(2)
call R(4)
call YO(4)
call Rest(8)
call YO(4)
call Rest(8)
call GY(4)
call G(8)
call G(8)
call GY(4)
call Rest(8)
call GY(4)
call GY(8)
call G(4)
call GY(4)
call Rest(8)
call BO(8)
call BO(8)
call YO(8)
call YO(4)
call Rest(4)
call Rest(8)
call YB(8)
call YB(8)
call RB(8)
call RB(4)
call Rest(4)
call RB(4)
call BPM(149.5)
call GY(8)
call G(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
call Y(8)
call Y(4)
call Rest(4)
call GY(4)
call GY(4)
call Rest(2)
call BO(4)
call YO(4)
call Rest(2)
call YB(4)
call RB(4)
call Rest(2)
call Rest(8)
call O(8)
call B(8)
call Y(8)
call B(8)
call Y(8)
call R(8)
call Y(4)
call Rest(8)
call G(4)
call GY(4)
call Rest(4)
call BO(4)
call YO(4)
call Rest(2)
call YB(4)
call RB(4)
call Rest(8)
call RB(8)
call YB(8)
call GY(8)
call BPM(151)
call Rest(8)
call GY(8)
call G(4)
call GY(4)
call Rest(8)
call Y(8)
// Chorus 3
call G(4)
call Y(8)
call G(8)
call GY(4)
call Rest(4)
call BO(4)
call YO(4)
call YO(4)
call Rest(4)
call R(8)
call RB(4)
call R(8)
call RB(4)
call Rest(4)
call BPM(149)
call Rest(8)
call G(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(8)
call B(4)
call Rest(4)
call BPM(151)
call Rest(8)
call G(4)
call GY(8)
call GY(4)
call Rest(4)
call Rest(8)
call YO(4)
call Y(8)
call YO(4)
call Rest(4)
call Rest(8)
call RB(4)
call R(8)
call RB(4)
call RB(4)
call Rest(8)
call GY(4)
call G(8)
call GY(4)
call RB(4)
call BPM(152.5)
call Rest(8)
call BO(4)
call B(8)
call BO(4)
call Rest(4)
call Rest(8)
call YO(4)
call Y(8)
call YO(4)
call Rest(4)
call Rest(8)
call RB(4)
call R(8)
call RB(8)
call RO(8)
call RB(4)
call Rest(8)
call G(8)
call G(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(8)
call Y(4)
call BPM(153)
call Rest(4)
call Rest(8)
call BO(8)
call B(8)
call BO(8)
call BO(8)
call BO(8)
call BO(4)
call Rest(8)
call YO(4)
call Y(8)
call YO(8)
call YO(8)
call YO(4)
call Rest(8)
call RB(4)
call R(8)
call RB(4)
call RB(4)
call G(8)
call GY(4)
call G(8)
call GY(4)
call GY(8)
call GY(8)
// Guitar Solo A
call BPM(154.5)
call Rest(1)
call BPM(155)
call Rest(1)
call Rest(1)
call BPM(154)
call Rest(4)
call B(2)
call Rest(4)
call R(1)
call BPM(157.5)
call Rest(4)
call Rest(8)
call B(8)
call Y(8)
call R(8)
call G(8)
call R(8)
call BPM(152)
call Rest(1)
call BPM(153)
call Rest(2)
call Y(8)
call B(8)
call O(8)
call O(8)
call BPM(152)
call Rest(8)
call B(8)
call Rest(2)
call Rest(4)
call Rest(8)
call O(8)
call B(8)
call B(8)
call Y(8)
call R(8)
call G(8)
call R(8)
call Rest(1)
call BPM(154)
call Rest(2)
call R(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(8)
call BPM(153)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(2)
call Rest(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(8)
call R(8)
call R(8)
call Rest(1)
// Guitar Solo B
call Rest(2)
call G(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(8)
call B(8)
call B(8)
call BPM(154.5)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(8)
call BPM(156)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(8)
call BPM(152.5)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(2)
call Rest(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(4)
call Rest(4)
call Rest(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(2)
call Rest(8)
call B(4)
call Rest(8)
call BPM(151.5)
call Y(8)
call R(8)
call Y(8)
call G(8)
call Rest(4)
call Rest(8)
call G(8)
call BPM(154.5)
call R(8)
call B(8)
call B(8)
call B(8)
call Rest(1)
call B(8)
call Y(8)
call B(8)
call O(8)
call BPM(153)
call Rest(8)
call B(8)
call Y(8)
call Y(8)
call Rest(2)
// Guitar Solo C
call Rest(2)
call G(8)
call R(8)
call Y(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(16)
call BPM(152)
call Rest(2)
call Rest(8)
call O(4)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
call Rest(4)
call R(4)
call B(4)
call R(8)
call Y(8)
call R(1)
call BPM(154)
call Rest(2)
call G(8)
call R(8)
call Y(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(4)
call B(4)
call Y(8)
call G(8)
call R(8)
call Y(8)
call BPM(153)
call Rest(8)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
call Rest(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(8)
call R(16)
call Rest(2)
call Rest(4)
call Rest(8)
call R(8)
call Y(8)
call B(8)
call O(8)
call B(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(8)
call R(8)
call B(8)
// Guitar Solo D
call BPM(154)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call BPM(155)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call BPM(152.5)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call BPM(154.5)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(156)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(156.5)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(158)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(156)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(4)
// Outro
call BPM(152.75)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(8)
call BPM(152)
call Rest(8)
call R(8)
call B(8)
call R(8)
call B(4)
call O(4)
call BPM(153.5)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(4)
call R(8)
call B(8)
call R(8)
call B(4)
call O(4)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(4)
call R(8)
call B(8)
call R(8)
call B(4)
call O(4)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(4)
call R(8)
call B(4)
call O(4)
call Rest(2)
call Rest(1)
endfunction
//===========================================================================
function InitTrig_SyncTrackKnocking takes nothing returns nothing
set gg_trg_SyncTrackKnocking = CreateTrigger( )
call TriggerAddAction( gg_trg_SyncTrackKnocking, function Trig_SyncTrackKnocking_Actions )
endfunction
function Trig_ChartH_Knocking_Actions takes nothing returns nothing
set udg_SignatureNumerator = 4
set udg_SignatureDenominator = 4
set udg_IntWorkingNote = 0
set udg_SongDifficulty = 4
set udg_MusicBacking[1] = gg_snd_KnockinSong
set udg_MusicGuitar[1] = gg_snd_KnockinGuitar
// ====
call BPM(147)
call Rest(1)
call Rest(1)
// Intro
call Rest(8)
call BO(8)
call YO(8)
call R(8)
call YB(8)
call RB(8)
call R(8)
call G(8)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(8)
call Rest(2)
call Rest(8)
call G(8)
call R(8)
call G(8)
call Y(8)
call G(8)
call B(4)
call BPM(148.5)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call BPM(151)
call Rest(8)
call RY(4)
call R(8)
call YB(8)
call RB(8)
call R(8)
call G(8)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call BO(8)
call YO(8)
call R(8)
call YB(8)
call RB(8)
call G(8)
call GY(8)
call BPM(152)
call Rest(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call BO(8)
call B(8)
call O(8)
call B(4)
call GB(8)
call G(8)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call G(8)
call R(8)
call G(8)
call Y(8)
call G(8)
call B(4)
call BPM(151)
call GY(8)
call GY(8)
call GB(8)
call GY(8)
call Rest(2)
call Rest(8)
call G(8)
call GY(4)
call GY(8)
call GY(8)
call GY(8)
call G(8)
// Verse 1
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(4)
call GY(4)
call Rest(8)
call GY(8)
call GY(4)
call Rest(4)
call Rest(8)
call BO(8)
call YO(8)
call R(8)
call Y(8)
call R(8)
call G(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BPM(150.5)
call BO(8)
call YB(8)
call Rest(2)
call G(8)
call RB(8)
call Rest(4)
call R(8)
call Y(8)
call B(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(8)
call Rest(4)
call G(8)
call G(8)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(8)
call Y(8)
call YB(4)
call Rest(4)
call Rest(8)
call BO(8)
call BO(8)
call B(8)
call BO(8)
call YO(8)
call YB(8)
call Y(8)
call R(8)
call G(8)
call YB(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(8)
call Y(8)
call G(4)
call Rest(8)
call Y(8)
call B(4)
call Rest(4)
call BPM(152)
call Rest(8)
call BO(8)
call YO(8)
call YB(8)
call Y(8)
call R(8)
call G(8)
call G(8)
// Verse 2
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(4)
call Rest(8)
call RY(4)
call G(8)
call GY(4)
call Rest(4)
call Rest(8)
call G(8)
call YB(4)
call Y(8)
call YB(8)
call YB(8)
call G(8)
call YB(8)
call RB(8)
call RB(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call RY(8)
call YB(4)
call G(4)
call YB(4)
call RB(4)
call Rest(8)
call R(8)
call Y(8)
call B(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(8)
call Rest(2)
call G(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(1)
call YB(8)
call YB(4)
call G(8)
call YB(8)
call Y(8)
call R(8)
call Y(8)
call R(8)
call G(8)
call YB(4)
call RY(4)
call G(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call Rest(2)
call Rest(8)
call B(8)
// Chorus 1
call BPM(150)
call R(4)
call Rest(8)
call Y(8)
call B(4)
call R(4)
call BO(4)
call YO(4)
call Rest(4)
call Y(8)
call Y(8)
call BPM(148.5)
call YB(4)
call RB(4)
call Rest(8)
call R(8)
call Y(8)
call GY(4)
call G(8)
call Y(8)
call B(8)
call B(4)
call Rest(4)
call GY(4)
call Rest(4)
call GY(4)
call Rest(4)
call BO(4)
call YO(4)
call Rest(4)
call Rest(8)
call Rest(16)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(4)
call RB(4)
call Rest(8)
call R(8)
call Y(8)
call G(4)
call Y(8)
call G(8)
call G(8)
call Y(4)
call G(8)
call Y(8)
call GY(4)
call Rest(2)
call Rest(4)
call BO(4)
call YO(4)
call Rest(4)
call Rest(4)
call BPM(151.5)
call YB(4)
call RB(4)
call Rest(8)
call B(8)
call B(8)
call G(8)
call BPM(153)
call Rest(8)
call Y(8)
call GY(4)
call Rest(8)
call GY(8)
call GY(4)
// Verse 3
call BPM(152)
call Rest(8)
call BO(8)
call YO(8)
call Y(8)
call R(8)
call G(8)
call YB(4)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BPM(153)
call BO(8)
call YB(8)
call Rest(4)
call G(8)
call GR(4)
call GY(8)
call Rest(2)
call Y(4)
call Rest(4)
call Rest(8)
call YB(8)
call YB(8)
call Y(8)
call YB(8)
call R(8)
call RY(8)
call G(8)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call G(8)
call G(8)
call G(8)
call YB(4)
call RB(8)
call Rest(4)
call R(8)
call Y(8)
call B(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(16)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(8)
call G(8)
call R(8)
call G(8)
call R(8)
call BPM(152)
call G(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call G(8)
call G(8)
call G(8)
call YB(4)
call Y(8)
call BPM(151.5)
call GY(4)
call GY(8)
call GY(8)
call G(8)
call YB(8)
call YB(8)
call Y(8)
call YB(8)
call Y(8)
call R(8)
call YB(8)
call Y(8)
call R(8)
call R(8)
call G(8)
call GR(4)
call Rest(4)
call BO(8)
call BO(8)
call BO(8)
call YB(8)
call BO(8)
call YB(8)
call G(8)
call G(8)
call G(8)
call B(4)
call RB(8)
// Chorus 2
call Rest(4)
call R(8)
call Y(8)
call B(8)
call B(8)
call Rest(4)
call B(4)
call Y(4)
call Rest(2)
call R(4)
call YO(4)
call Rest(8)
call YO(4)
call Rest(8)
call GY(4)
call G(8)
call G(8)
call GY(4)
call Rest(8)
call GY(4)
call GY(8)
call G(4)
call GY(4)
call Rest(8)
call BO(8)
call BO(8)
call YO(8)
call YO(4)
call Rest(4)
call Rest(8)
call YB(8)
call YB(8)
call RB(8)
call RB(4)
call Rest(4)
call RB(4)
call BPM(149.5)
call GY(8)
call G(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
call Y(8)
call Y(4)
call Rest(4)
call GY(4)
call GY(4)
call Rest(2)
call BO(4)
call YO(4)
call Rest(2)
call YB(4)
call RB(4)
call Rest(2)
call Rest(8)
call O(8)
call B(8)
call Y(8)
call B(8)
call Y(8)
call R(8)
call Y(4)
call Rest(8)
call G(4)
call GY(4)
call Rest(4)
call BO(4)
call YO(4)
call Rest(2)
call YB(4)
call RB(4)
call Rest(8)
call RB(8)
call YB(8)
call GY(8)
call BPM(151)
call Rest(8)
call GY(8)
call G(4)
call GY(4)
call Rest(8)
call Y(8)
// Chorus 3
call G(4)
call Y(8)
call G(8)
call GY(4)
call Rest(4)
call BO(4)
call YO(4)
call YO(4)
call Rest(4)
call R(8)
call RB(4)
call R(8)
call RB(4)
call Rest(4)
call BPM(149)
call Rest(8)
call G(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(8)
call B(4)
call Rest(4)
call BPM(151)
call Rest(8)
call G(4)
call GY(8)
call GY(4)
call Rest(4)
call Rest(8)
call YO(4)
call Y(8)
call YO(4)
call Rest(4)
call Rest(8)
call RB(4)
call R(8)
call RB(4)
call RB(4)
call Rest(8)
call GY(4)
call G(8)
call GY(4)
call RB(4)
call BPM(152.5)
call Rest(8)
call BO(4)
call B(8)
call BO(4)
call Rest(4)
call Rest(8)
call YO(4)
call Y(8)
call YO(4)
call Rest(4)
call Rest(8)
call RB(4)
call R(8)
call RB(8)
call RO(8)
call RB(4)
call Rest(8)
call G(8)
call G(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(8)
call Y(4)
call BPM(153)
call Rest(4)
call Rest(8)
call BO(8)
call B(8)
call BO(8)
call BO(8)
call BO(8)
call BO(4)
call Rest(8)
call YO(4)
call Y(8)
call YO(8)
call YO(8)
call YO(4)
call Rest(8)
call RB(4)
call R(8)
call RB(4)
call RB(4)
call G(8)
call GY(4)
call G(8)
call GY(4)
call GY(8)
call GY(8)
// Guitar Solo A
call BPM(154.5)
call Rest(1)
call BPM(155)
call Rest(1)
call Rest(1)
call BPM(154)
call Rest(4)
call B(2)
call Rest(4)
call R(1)
call BPM(157.5)
call Rest(4)
call Rest(8)
call B(8)
call Y(8)
call R(8)
call G(8)
call R(8)
call BPM(152)
call Rest(1)
call BPM(153)
call Rest(2)
call Y(8)
call B(8)
call O(8)
call O(8)
call BPM(152)
call Rest(8)
call B(8)
call Rest(2)
call Rest(4)
call Rest(8)
call O(8)
call B(8)
call B(8)
call Y(8)
call R(8)
call G(8)
call R(8)
call Rest(1)
call BPM(154)
call Rest(2)
call R(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(8)
call BPM(153)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(2)
call Rest(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(8)
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(8)
call R(8)
call R(8)
call Rest(1)
// Guitar Solo B
call Rest(2)
call G(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(8)
call B(8)
call B(8)
call BPM(154.5)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(8)
call BPM(156)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(8)
call BPM(152.5)
call Rest(8)
call Y(8)
call B(8)
call B(4)
call Y(8)
call B(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(2)
call Rest(8)
call B(8)
call Rest(4)
call Y(8)
call R(8)
call G(4)
call Rest(4)
call Rest(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(2)
call Rest(8)
call B(4)
call Rest(8)
call BPM(151.5)
call Y(8)
call R(8)
call Y(8)
call G(8)
call Rest(4)
call Rest(8)
call G(8)
call BPM(154.5)
call R(8)
call B(8)
call B(8)
call B(8)
call Rest(1)
call B(8)
call Y(8)
call B(8)
call O(8)
call BPM(153)
call Rest(8)
call B(8)
call Y(8)
call Y(8)
call Rest(2)
// Guitar Solo C
call Rest(2)
call G(8)
call R(8)
call Y(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call B(16)
call BPM(152)
call Rest(2)
call Rest(8)
call O(4)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
call Rest(4)
call R(4)
call B(4)
call R(8)
call Y(8)
call R(1)
call BPM(154)
call Rest(2)
call G(8)
call R(8)
call Y(8)
call B(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call O(16)
call Rest(4)
call B(4)
call Y(8)
call G(8)
call R(8)
call Y(8)
call BPM(153)
call Rest(8)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call R(8)
call Y(4)
call G(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call Y(16)
call Rest(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(8)
call R(16)
call Rest(2)
call Rest(4)
call Rest(8)
call R(8)
call Y(8)
call B(8)
call O(8)
call B(8)
call Y(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call R(16)
set udg_XGameNoteHammerOn[udg_IntWorkingNote] = true
call G(8)
call R(8)
call B(8)
// Guitar Solo D
call BPM(154)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call BPM(155)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call BPM(152.5)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call B(8)
call BPM(154.5)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(156)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(156.5)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(158)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(8)
call BO(8)
call BPM(156)
call Rest(4)
call R(4)
call G(8)
call R(8)
call Y(4)
// Outro
call BPM(152.75)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(8)
call BPM(152)
call Rest(8)
call R(8)
call B(8)
call R(8)
call B(4)
call O(4)
call BPM(153.5)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(4)
call R(8)
call B(8)
call R(8)
call B(4)
call O(4)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(4)
call R(8)
call B(8)
call R(8)
call B(4)
call O(4)
call G(8)
call R(4)
call G(8)
call Y(4)
call G(8)
call B(4)
call R(8)
call B(4)
call O(4)
call Rest(2)
call Rest(1)
endfunction
//===========================================================================
function InitTrig_ChartH_Knocking takes nothing returns nothing
set gg_trg_ChartH_Knocking = CreateTrigger( )
call TriggerAddAction( gg_trg_ChartH_Knocking, function Trig_ChartH_Knocking_Actions )
endfunction