Terrabull
Veteran Member (Done that)
- Reaction score
- 38
Okay, lets get down to business:
Basically, this trigger causes Netsplits. Whenever someone skips the cinematic, they are separated from the people who don't. If I exchange GetPlayersAll() with bj_FORCE_PLAYER[GetPlayerId(GetLocalPlayer())] in the Transmission call, will it fix things?
JASS:
function Trig_Tutorial_Cinematic_Actions takes nothing returns nothing
if udg_Skip_Cin[GetPlayerId(GetLocalPlayer())] == false then
call ForceCinematicSubtitles(true)
call ClearTextMessages()
call ShowInterface(false,0.30)
call EnableUserControl(false)
call EnableOcclusion(false)
call CinematicFadeBJ( bj_CINEFADETYPE_FADEOUTIN, 1.00, "ReplaceableTextures\\CameraMasks\\Black_mask.blp", 0, 0, 0, 0 )
call PanCameraToTimed(GetStartLocationX(GetPlayerStartLocation(GetLocalPlayer())),GetStartLocationY(GetPlayerStartLocation(GetLocalPlayer())),0)
call TransmissionFromUnitTypeWithNameBJ(GetPlayersAll(), GetLocalPlayer(), 039;n013039;, "TRIGSTR_4729", GetPlayerStartLocationLoc(GetLocalPlayer()), gg_snd_VillagerM3, "TRIGSTR_4730", bj_TIMETYPE_ADD, 5.00, true )
endif
if udg_Skip_Cin[GetPlayerId(GetLocalPlayer())] == false then
call PanCameraToTimedLocForPlayer( GetLocalPlayer(), Location(( GetLocationX(GetPlayerStartLocationLoc(GetLocalPlayer())) - 983.00 ), ( GetLocationY(GetPlayerStartLocationLoc(GetLocalPlayer())) + 1713.00 )), 0 )
call TransmissionFromUnitTypeWithNameBJ(GetPlayersAll(), GetLocalPlayer(), 039;n013039;, "TRIGSTR_4731", GetCameraTargetPositionLoc(), null, "TRIGSTR_4732", bj_TIMETYPE_ADD, 3.00, true )
endif
if udg_Skip_Cin[GetPlayerId(GetLocalPlayer())] == false then
call PanCameraToTimedLocForPlayer( GetLocalPlayer(), Location(( GetCameraTargetPositionX() + 1191.00 ), GetCameraTargetPositionY()), 7.00 )
call TransmissionFromUnitTypeWithNameBJ(GetPlayersAll(), GetLocalPlayer(), 039;n013039;, "TRIGSTR_4733", GetCameraTargetPositionLoc(), null, "TRIGSTR_4734", bj_TIMETYPE_ADD, 4.30, true )
endif
if udg_Skip_Cin[GetPlayerId(GetLocalPlayer())] == false then
call PanCameraToTimedLocForPlayer( GetLocalPlayer(), GetPlayerStartLocationLoc(GetLocalPlayer()), 3.00 )
call TransmissionFromUnitTypeWithNameBJ(GetPlayersAll(), GetLocalPlayer(), 039;n013039;, "TRIGSTR_4735", GetCameraTargetPositionLoc(), null, "TRIGSTR_4736", bj_TIMETYPE_ADD, 5.30, true )
endif
if udg_Skip_Cin[GetPlayerId(GetLocalPlayer())] == false then
call ShowInterface(true,2)
call EnableUserControl(true)
call EnableOcclusion(true)
call VolumeGroupReset()
call CameraSetSmoothingFactor(0)
endif
call DisplayTextToPlayer(Player(0),0,0,"You have 30 seconds to enter options. Choices are:
-bosstop -income -nomorale")
endfunction
//===========================================================================
function InitTrig_Tutorial_Cinematic takes nothing returns nothing
set gg_trg_Tutorial_Cinematic = CreateTrigger( )
call TriggerRegisterTimerEvent(gg_trg_Tutorial_Cinematic,0.30,false)
call TriggerAddAction(gg_trg_Tutorial_Cinematic,function Trig_Tutorial_Cinematic_Actions)
endfunction
JASS:
function Trig_Turn_off_Cinematic_Conditions takes nothing returns boolean
return udg_Skip_Cin[GetPlayerId(GetTriggerPlayer())] == false
endfunction
function Trig_Turn_off_Cinematic_Actions takes nothing returns nothing
set udg_Skip_Cin[GetPlayerId(GetTriggerPlayer())] = true
if GetLocalPlayer() == GetTriggerPlayer() then
call PanCameraToTimed(GetStartLocationX(GetPlayerStartLocation(GetTriggerPlayer())),GetStartLocationY(GetPlayerStartLocation(GetTriggerPlayer())),0)
call ShowInterface(true,0.30)
call EnableUserControl(true)
call EnableOcclusion(true)
call VolumeGroupReset()
call CameraSetSmoothingFactor(0)
endif
endfunction
//===========================================================================
function InitTrig_Turn_off_Cinematic takes nothing returns nothing
local integer i = 0
set gg_trg_Turn_off_Cinematic = CreateTrigger()
loop
exitwhen i > 7
call TriggerRegisterPlayerEvent(gg_trg_Turn_off_Cinematic,Player(i),EVENT_PLAYER_END_CINEMATIC)
set i = i + 1
endloop
call TriggerAddCondition(gg_trg_Turn_off_Cinematic,Condition(function Trig_Turn_off_Cinematic_Conditions))
call TriggerAddAction(gg_trg_Turn_off_Cinematic,function Trig_Turn_off_Cinematic_Actions)
endfunction
Basically, this trigger causes Netsplits. Whenever someone skips the cinematic, they are separated from the people who don't. If I exchange GetPlayersAll() with bj_FORCE_PLAYER[GetPlayerId(GetLocalPlayer())] in the Transmission call, will it fix things?