[Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
5 participantes
TeaM KingS :: Games: :: Warcraft: World Editor :: Tutoriais: Gui, Jass, Spells, Terrain, Modelagem, Textura :: Triggers(GUI)
Página 1 de 1
[Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
Introdução do sistema
O mais nova tecnologia de Cinematic no World Editor (WE). Um Cinema avançado e muito bom de uso e concerteza mais complicado e que usa variables. Para ser ezato, usam-se 52 variables!
Tutorial do Sistema
1º Passo
Criando as Variables:
Variable Name: cinS_act_colourA
Variable Type: Real Array (1)
Variable Name: cinS_act_colourB
Variable Type: Real Array (1)
Variable Name: cinS_act_colourG
Variable Type: Real Array (1)
Variable Name: cinS_act_colourR
Variable Type: Real Array (1)
Variable Name: cinS_act_colourTime
Variable Type: Real Array (1)
Variable Name: cinS_act_colourVA
Variable Type: Real Array (1)
Variable Name: cinS_act_colourVB
Variable Type: Real Array (1)
Variable Name: cinS_act_colourVG
Variable Type: Real Array (1)
Variable Name: cinS_act_colourVR
Variable Type: Real Array (1)
Variable Name: cinS_act_groups
Variable Type: Unit Group Array (1)
Variable Name: cinS_act_moveAZ
Variable Type: Real Array (1)
Variable Name: cinS_act_moveTime
Variable Type: Real Array (1)
Variable Name: cinS_act_moveVX
Variable Type: Real Array (1)
Variable Name: cinS_act_moveVY
Variable Type: Real Array (1)
Variable Name: cinS_act_moveVZ
Variable Type: Real Array (1)
Variable Name: cinS_act_moveX
Variable Type: Real Array (1)
Variable Name: cinS_act_moveY
Variable Type: Real Array (1)
Variable Name: cinS_act_moveZ
Variable Type: Real Array (1)
Variable Name: cinS_act_sizeS
Variable Type: Real Array (1)
Variable Name: cinS_act_sizeTime
Variable Type: Real Array (1)
Variable Name: cinS_act_sizeVS
Variable Type: Real Array (1)
Variable Name: cinS_act_turnFi
Variable Type: Real Array (1)
Variable Name: cinS_act_turnTime
Variable Type: Real Array (1)
Variable Name: cinS_act_turnVFi
Variable Type: Real Array (1)
Variable Name: cinS_actor
Variable Type: Unit Array (1)
Variable Name:cinS_cam_accprim
Variable Type: Real Array (1)
Variable Name: cinS_cam_accsec
Variable Type: Real Array (1)
Variable Name: cinS_cam_endtime
Variable Type: Real Array (1)
Variable Name: cinS_cam_fadeUnit
Variable Type: Unit
Variable Name: cinS_cam_ignoreTerrain
Variable Type: Boolean
Variable Name: cinS_cam_OvRangEndtime
Variable Type: Real
Variable Name: cinS_cam_OvRangSmooth
Variable Type: Boolean
Variable Name: cinS_cam_OvRangTime
Variable Type: Real
Variable Name: cinS_cam_OvRangUnitPrim
Variable Type: Unit
Variable Name: cinS_cam_OvRangUnitSec
Variable Type: Unit
Variable Name: cinS_cam_OvRoffset
Variable Type: Real Array (1)
Variable Name: cinS_cam_OvRxyzEndtime
Variable Type: Real
Variable Name: cinS_cam_OvRxyzSmooth
Variable Type: Boolean
Variable Name: cinS_cam_OvRxyzTime
Variable Type: Real
Variable Name: cinS_cam_OvRxyzUnitPrim
Variable Type: Unit
Variable Name: cinS_cam_OvRxyzUnitSec
Variable Type: Unit
Variable Name: cinS_cam_startval
Variable Type: Real Array (1)
Variable Name: cinS_cam_startvel
Variable Type: Real Array (1)
Variable Name: cinS_cam_time
Variable Type: Real Array (1)
Variable Name: cinS_cam_trigger
Variable Type: Trigger
Variable Name: cinS_camera
Variable Type: Camera Object Array (1)
Variable Name: cinS_displaySubtitles
Variable Type: Boolean
Variable Name: cinS_effect
Variable Type: Special Effect Array (1)
Variable Name: cinS_effectCount
Variable Type: Integer
Variable Name: cinS_effectFree
Variable Type: Integer Array (1)
Variable Name: cinS_GC
Variable Type: Game Cache
Variable Name: cinS_tempPoint
Variable Type: Point
Pronto, as 52 Variables estão prontas
2º Passo
Crie as Cameras nos locais desejados
3º Passo
Criando as Triggers
E cria 1 Categoria chamada: Needed Variables for Cinematic System
E as triggers dentro dela:
.
Agora crie uma pasta com nome: Example
E dentro dela, uma Trigger "Comments" chamada: Usage Sample
Abaixo crie 1 trigger chamada: Sample Initialization
Com as triggers
Agora cria mais uma trigger, chamada: Sample PlayMovie
Com as seguintes triggers dentro
Agora crie mais uma trigger com o nome: Sample Scene 1
Porem esta será diferente, esta você terá que copiar o codigo pois é em JASS.
E agora cria 1 Trigger comments chamada: GUI Triggers called from the sample
E cria uma trigger logo abaixo chamada: EndMovie
E dentro dela:
A Tela inteira. Engraçado que nunca grava dentro do Warcraft III a Tela toda.. Isso eu não sei pq, então eu dei 1 Zoom pra melhorar xD)
Créditos a: Anitarf
Status do Mapa:
Segurança: OFF
Local Started: Battle.net and Garena
Linguajar(Idioma): Português – Brasil (PT – BR)
Empresa: Staar. Productions
Link de DownLoad (DL) no EpicWar: Staar. Productions (Clique aqui para baixar o mapa)
O mais nova tecnologia de Cinematic no World Editor (WE). Um Cinema avançado e muito bom de uso e concerteza mais complicado e que usa variables. Para ser ezato, usam-se 52 variables!
Tutorial do Sistema
1º Passo
Criando as Variables:
Variable Name: cinS_act_colourA
Variable Type: Real Array (1)
Variable Name: cinS_act_colourB
Variable Type: Real Array (1)
Variable Name: cinS_act_colourG
Variable Type: Real Array (1)
Variable Name: cinS_act_colourR
Variable Type: Real Array (1)
Variable Name: cinS_act_colourTime
Variable Type: Real Array (1)
Variable Name: cinS_act_colourVA
Variable Type: Real Array (1)
Variable Name: cinS_act_colourVB
Variable Type: Real Array (1)
Variable Name: cinS_act_colourVG
Variable Type: Real Array (1)
Variable Name: cinS_act_colourVR
Variable Type: Real Array (1)
Variable Name: cinS_act_groups
Variable Type: Unit Group Array (1)
Variable Name: cinS_act_moveAZ
Variable Type: Real Array (1)
Variable Name: cinS_act_moveTime
Variable Type: Real Array (1)
Variable Name: cinS_act_moveVX
Variable Type: Real Array (1)
Variable Name: cinS_act_moveVY
Variable Type: Real Array (1)
Variable Name: cinS_act_moveVZ
Variable Type: Real Array (1)
Variable Name: cinS_act_moveX
Variable Type: Real Array (1)
Variable Name: cinS_act_moveY
Variable Type: Real Array (1)
Variable Name: cinS_act_moveZ
Variable Type: Real Array (1)
Variable Name: cinS_act_sizeS
Variable Type: Real Array (1)
Variable Name: cinS_act_sizeTime
Variable Type: Real Array (1)
Variable Name: cinS_act_sizeVS
Variable Type: Real Array (1)
Variable Name: cinS_act_turnFi
Variable Type: Real Array (1)
Variable Name: cinS_act_turnTime
Variable Type: Real Array (1)
Variable Name: cinS_act_turnVFi
Variable Type: Real Array (1)
Variable Name: cinS_actor
Variable Type: Unit Array (1)
Variable Name:cinS_cam_accprim
Variable Type: Real Array (1)
Variable Name: cinS_cam_accsec
Variable Type: Real Array (1)
Variable Name: cinS_cam_endtime
Variable Type: Real Array (1)
Variable Name: cinS_cam_fadeUnit
Variable Type: Unit
Variable Name: cinS_cam_ignoreTerrain
Variable Type: Boolean
Variable Name: cinS_cam_OvRangEndtime
Variable Type: Real
Variable Name: cinS_cam_OvRangSmooth
Variable Type: Boolean
Variable Name: cinS_cam_OvRangTime
Variable Type: Real
Variable Name: cinS_cam_OvRangUnitPrim
Variable Type: Unit
Variable Name: cinS_cam_OvRangUnitSec
Variable Type: Unit
Variable Name: cinS_cam_OvRoffset
Variable Type: Real Array (1)
Variable Name: cinS_cam_OvRxyzEndtime
Variable Type: Real
Variable Name: cinS_cam_OvRxyzSmooth
Variable Type: Boolean
Variable Name: cinS_cam_OvRxyzTime
Variable Type: Real
Variable Name: cinS_cam_OvRxyzUnitPrim
Variable Type: Unit
Variable Name: cinS_cam_OvRxyzUnitSec
Variable Type: Unit
Variable Name: cinS_cam_startval
Variable Type: Real Array (1)
Variable Name: cinS_cam_startvel
Variable Type: Real Array (1)
Variable Name: cinS_cam_time
Variable Type: Real Array (1)
Variable Name: cinS_cam_trigger
Variable Type: Trigger
Variable Name: cinS_camera
Variable Type: Camera Object Array (1)
Variable Name: cinS_displaySubtitles
Variable Type: Boolean
Variable Name: cinS_effect
Variable Type: Special Effect Array (1)
Variable Name: cinS_effectCount
Variable Type: Integer
Variable Name: cinS_effectFree
Variable Type: Integer Array (1)
Variable Name: cinS_GC
Variable Type: Game Cache
Variable Name: cinS_tempPoint
Variable Type: Point
Pronto, as 52 Variables estão prontas
2º Passo
Crie as Cameras nos locais desejados
3º Passo
Criando as Triggers
E cria 1 Categoria chamada: Needed Variables for Cinematic System
E as triggers dentro dela:
(Clique na imagem abaixo para amplia-la)Needed Variables for Cinematic System
Events
Conditions
cinS_actor[0] Equal to No unit
cinS_act_moveX[0] Equal to cinS_act_moveVX[0]
cinS_act_moveY[0] Equal to cinS_act_moveVY[0]
cinS_act_moveZ[0] Equal to cinS_act_moveVZ[0]
cinS_act_moveAZ[0] Equal to cinS_act_moveTime[0]
cinS_act_turnFi[0] Equal to cinS_act_turnVFi[0]
cinS_act_sizeS[0] Equal to cinS_act_sizeVS[0]
cinS_act_turnTime[0] Equal to cinS_act_sizeTime[0]
cinS_act_colourA[0] Equal to cinS_act_colourVA[0]
cinS_act_colourR[0] Equal to cinS_act_colourVR[0]
cinS_act_colourG[0] Equal to cinS_act_colourVG[0]
cinS_act_colourB[0] Equal to cinS_act_colourVB[0]
cinS_act_colourTime[0] Equal to (Load a of b from cinS_GC)
cinS_cam_startval[0] Equal to cinS_cam_startvel[0]
cinS_cam_accprim[0] Equal to cinS_cam_accsec[0]
cinS_cam_time[0] Equal to cinS_cam_endtime[0]
cinS_cam_OvRangUnitPrim Equal to cinS_cam_OvRangUnitSec
cinS_cam_OvRxyzUnitPrim Equal to cinS_cam_OvRxyzUnitSec
cinS_cam_OvRangEndtime Equal to cinS_cam_OvRangTime
cinS_cam_OvRxyzEndtime Equal to cinS_cam_OvRxyzTime
cinS_cam_OvRangSmooth Equal to cinS_cam_OvRxyzSmooth
cinS_cam_OvRoffset[0] Equal to 0.00
cinS_cam_ignoreTerrain Equal to cinS_displaySubtitles
cinS_effectCount Equal to cinS_effectFree[0]
Actions
Set cinS_cam_trigger = (This trigger)
Set cinS_tempPoint = (Center of (Playable map area))
Set cinS_cam_fadeUnit = No unit
Set cinS_camera[0] = (Current camera)
Set cinS_act_groups[0] = (Last created unit group)
Set cinS_effect[0] = (Last created special effect)
-------- TRIGGER FOR AUTO-GENERATION OF NEEDED VARIABLES --------
-------- First of all, have "Automatically create unknown variables while pasting trigger data" ON in your editor's prefferences dialog --------
-------- Then copy this trigger to the map where you want to create the needed variables --------
-------- All the variables needed for this system to run should now be in your map, you can remove this trigger from it --------
.
Agora crie uma pasta com nome: Example
E dentro dela, uma Trigger "Comments" chamada: Usage Sample
Abaixo crie 1 trigger chamada: Sample Initialization
Com as triggers
(Clique na imagem abaixo para amplia-la)Sample Initialization
Events
Map initialization
Conditions
Actions
Custom script: call InitCinematicSystem()
Custom script: call ActorCreate(Player(0), 1, 'Edem') //demon hunter
Custom script: call ActorCreate(Player(0), 2, 'Udre') //dreadlord
Custom script: call ActorCreate(Player(0), 3, 'earc') //the archer that dies at the start
Custom script: call ActorCreate(Player(0), 4, 'earc') //archer 2
Custom script: call ActorCreate(Player(0), 5, 'earc') //archer 3
Custom script: call ActorCreate(Player(0), 6, 'esen') //huntress 1
Custom script: call ActorCreate(Player(0), 7, 'esen') //huntress 2
Custom script: call ActorCreate(Player(0), 8, 'e002') //demon hunter portrait
Custom script: call ActorCreate(Player(0), 9, 'e001') //dreadlord portrait
Custom script: call ActorWalkProperties( 'Edem', 8, 0.867, 300) //setup the demon hunter walk properties
Cinematic - Turn cinematic mode On for (All players)
Cinematic - Fade out over 0.00 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
Set cinS_camera[1] = Camera 001
Set cinS_camera[2] = Camera 002
Set cinS_camera[3] = Camera 003
Set cinS_camera[4] = Camera 004
Set cinS_camera[5] = Camera 005
Sound - Stop music Immediately
Sound - Clear the music list
Sound - Stop music Immediately
Sound - Disable dawn and dusk sounds
Environment - Set sky to Felwood Sky
Custom script: call StopSound(bj_nightAmbientSound, true, true)
Custom script: call StopSound(bj_dayAmbientSound, true, true)
Agora cria mais uma trigger, chamada: Sample PlayMovie
Com as seguintes triggers dentro
(Clique na imagem abaixo para amplia-la)Sample PlayMovie
Events
Time - Elapsed game time is 1.00 seconds
Conditions
Actions
Cinematic - Fade in over 0.00 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
Custom script: call PlayScene(1)
Agora crie mais uma trigger com o nome: Sample Scene 1
Porem esta será diferente, esta você terá que copiar o codigo pois é em JASS.
- Spoiler:
- Código:
//TESH.scrollpos=0
http://TESH.alwaysfold=0
//It's always useful to have a copy of the list of scripting functions near:
//function ScriptNextScene takes real time returns nothing
//function ScriptExternalFunc takes real time, string funcName returns nothing
//function ScriptPlaySound takes real time, string path, real pitch, integer volume returns nothing
//function ScriptPointEffect takes real time, real x, real y, real z, string path, real duration returns nothing
//function ScriptActEffect takes real time, integer actor, string path, string attachpoint, real duration returns nothing
//function ScriptActAbilityLvl takes real time, integer actor, integer abilityID, integer level returns nothing
//function ScriptActAnimPlay takes real time, integer actor, integer animationID, real animationBlend returns nothing
//function ScriptActAnimReset takes real time, integer actor returns nothing
//function ScriptActAnimSpeed takes real time, integer actor, real speed returns nothing
//function ScriptActSlide takes real time, integer actor, real x, real y, real duration, real g returns nothing
//function ScriptActWalk takes real time, integer actor, real x, real y, real duration, real animationBlend returns nothing
//function ScriptActTurn takes real time, integer actor, real destAng, real duration, integer clockwise returns nothing
//function ScriptActFace takes real time, integer actor, integer destActor, integer headORchest, real xoff, real yoff, real zoff, real animationBlend returns nothing
//function ScriptActFaceReset takes real time, integer actor, real animationBlend returns nothing
//function ScriptActColour takes real time, integer actor, real red, real green, real blue, real opacity, real duration returns nothing
//function ScriptActSize takes real time, integer actor, real size, real duration returns nothing
//function ScriptCamera takes real time, integer camera, real duration, integer changeType returns nothing
//function ScriptCameraStat takes real time, integer statID, real duration, real endValue, real endSpeed, integer changeType returns nothing
//function ScriptCameraIgnoreTerrain takes real time, boolean ignore returns nothing
//function ScriptActCameraLock takes real time, integer actor, real xoff, real yoff, real zoff, boolean smooth, real duration returns nothing
//function ScriptActCameraLockReset takes real time, boolean smooth, real duration returns nothing
//function ScriptActCameraFace takes real time, integer actor, real xoff, real yoff, real zoff, boolean smooth, real duration returns nothing
//function ScriptActCameraFaceReset takes real time, boolean smooth, real duration returns nothing
//function ScriptFog takes real time, real startZ, real endZ, real red, real green, real blue, real duration returns nothing
//function ScriptFade takes real time, real red, real green, real blue, real opacity, real duration returns nothing
//function ScriptSubtitleLine takes real time, string line returns nothing
//function ScriptSubtitleClear takes real time returns nothing
function InitActorColour takes nothing returns nothing
//Demon Hunter
call SetUnitColor(udg_cinS_actor[1], GetPlayerColor(Player(12)))
//Dreadlord
call SetUnitColor(udg_cinS_actor[2], GetPlayerColor(Player(12)))
//Night Elves
call SetUnitColor(udg_cinS_actor[3], GetPlayerColor(Player(10)))
call SetUnitColor(udg_cinS_actor[4], GetPlayerColor(Player(10)))
call SetUnitColor(udg_cinS_actor[5], GetPlayerColor(Player(10)))
call SetUnitColor(udg_cinS_actor[6], GetPlayerColor(Player(10)))
call SetUnitColor(udg_cinS_actor[7], GetPlayerColor(Player(10)))
//portraits
//call SetUnitColor(udg_cinS_actor[8], GetPlayerColor(Player(12)))
call SetUnitColor(udg_cinS_actor[9], GetPlayerColor(Player(12)))
endfunction
function MusicStart takes nothing returns nothing
call SetSoundPitch(gg_snd_PursuitTheme, 0.8)
call StartSound(gg_snd_PursuitTheme)
endfunction
function MusicStop takes nothing returns nothing
call StopSound(gg_snd_PursuitTheme, false, true)
endfunction
function Lightning1 takes nothing returns nothing
set bj_lastCreatedLightning = AddLightningEx("CHIM", false, -400,3000,3000, -100,3000,1050)
endfunction
function LightningCleanup takes nothing returns nothing
call DestroyLightning(bj_lastCreatedLightning)
endfunction
function Scene1Part1 takes nothing returns nothing
local real t=0.0 //Lets us easily move whole segments of actions around
call WriteToScene(1) //Tells the system to save the actions to scene 1 (DO NOT FORGET THIS)
call ScriptCamera(t+0.0, 1, 1.0, 1) //Change the camera instantly to camera[1]
call ScriptFog(t+0.0, 100.0, 5000.0, 15,15,16, 0) //Setup starting fog
call ScriptFade(t+0.0, 0,0,0,100, 0.0)
call ScriptExternalFunc(t+0.0, "InitActorColour")
call ScriptExternalFunc(t+0.0, "MusicStop") //stop the music
//Init dreadlord
call ScriptActAnimPlay(t+0.0, 2, 0, 0.15) //Let the dreadlord play his stand - 1 animation only (Stand - 1 is animationID 0)
call ScriptActAnimSpeed(t+0.0, 2, 1.0) //Set the animation speed of the dreadlord to 100% (1.0)
call ScriptActSlide(t+0.0, 2, 800, -1600, 0.0, 0.0) //Instantly moves the dreadlord
call ScriptActTurn(t+0.0, 2, 320.00, 0, 0) //Makes the dread lord face 320 degrees
call ScriptActSlide(t+0.0, 9, -3000,0, 0.0, 0.0) //put the portrait in a place where it won't bother us
//Init demon hunter
call ScriptActAnimPlay(t+0.0, 1, 0, 0.15) //Let the demon hunter play his stand - 1 animation only (Stand - 1 is animationID 0)
call ScriptActAnimSpeed(t+0.0, 1, 0.5) //Set the animation speed of the demon hunter to 50% (0.5)
call ScriptActSlide(t+0.0, 1, 450, 1100, 0.0, 0.0) //Instantly moves the demon hunter
call ScriptActTurn(t+0.0, 1, 270.00, 0, 0) //Makes the demon hunter face 270 degrees
call ScriptActSlide(t+0.0, 8, -3000,0, 0.0, 0.0) //put the portrait in a place where it won't bother us
//Init dying nightelves
call ScriptActSlide(t+0.0, 3, 1100, -1850, 0.0, 0.0)//archer1
call ScriptActTurn(t+0.0, 3, 120.00, 0, 0)
//play the death animation on the rest
call ScriptActAnimPlay(t+0.2, 4, 4, 0.15) //archer2
call ScriptActAnimPlay(t+0.2, 5, 4, 0.15) //archer3
call ScriptActAnimPlay(t+0.2, 6, 3, 0.15) //huntress1
call ScriptActAnimPlay(t+0.2, 7, 3, 0.15) //huntress2
//move them into positions after they have died
call ScriptActSlide(t+2.0, 4, 500, -1850, 0.0, 0.0)//archer2
call ScriptActTurn(t+2.0, 4, 70.00, 0, 0)
call ScriptActSlide(t+2.0, 5, 300, -1750, 0.0, 0.0)//archer3
call ScriptActTurn(t+2.0, 5, 300.00, 0, 0)
call ScriptActSlide(t+2.0, 6, 350, -1600, 0.0, 0.0)//huntress1
call ScriptActTurn(t+2.0, 6, 0.00, 0, 0)
//scene opens with archer's death
call ScriptPlaySound(t+0.8, "Units\\Undead\\Varimathras\\VarimathrasYes2.wav", 1.10, 127)
call ScriptSubtitleLine(t+1.0, "Stay out of my way!")
call ScriptSubtitleClear(t+3.2)
call ScriptActAnimPlay(t+2.0, 2, 10, 0.15) //dreadlord attack 2
call ScriptActAnimSpeed(t+2.7, 2, 0.0) //stop the animation mid-attack
call ScriptActAnimPlay(t+2.5, 3, 4, 0.15) //Death animation for the archer
call ScriptActAnimSpeed(t+2.9, 3, 0.75) //slow down the animation slightly
call ScriptFade(t+2.8, 0,0,0,0, 1.0) //fade in, showing archer die
call ScriptExternalFunc(t+3.0, "MusicStart") //start the music
call ScriptActAnimSpeed(t+5.0, 2, 0.1) //slowly resume dreadlord stand position
call ScriptActAnimSpeed(t+6.0, 2, 0.25)
call ScriptActAnimSpeed(t+7.0, 2, 0.5)
call ScriptActAnimPlay(t+7.2, 2, 0, 0.25) //Let the dreadlord play his stand - 1 animation only (Stand - 1 is animationID 0)
//Camera shows the other dead night elves around the dreadlord
call ScriptActCameraLock(t+8.0, 2, 0,0,200, false, 0.0)
call ScriptActCameraFace(t+8.0, 3, 0,0,0, false, 0.0)
call ScriptCameraStat(t+8.0, 9, 0.0, 200.0,0.0, 1) //9-distance to target, 1-instant change
call ScriptActCameraFace(t+8.1, 3, -500,0,0, true, 8.0)
call ScriptCameraStat(t+8.1, 9, 6.0, 1000.0,0.0, 2) //increase the distance to target over time
call ScriptActAnimPlay(t+9.5, 2, 2, 0.25) //dreadlord looks around (stand-2 animation)
call ScriptActTurn(t+9.5, 2, 270.00, 1.5, 0)
call ScriptActAnimPlay(t+9.5+(2.933/0.5), 2, 1, 0.25) //back to stand-1 animation when stand-2 finishes
call ScriptActFace(t+9.8, 2,4, 0, 0,0,0, 0.5) //look at the other corpses
call ScriptActTurn(t+13.8, 2, 300.00, 1.0, 0)
call ScriptActFaceReset(t+15.5, 2, 0.5)
//The demon hunter challenges the dreadlord
call ScriptActCameraLock(t+16.2, 2, 20,0,170, false, 0.0) //Show the dreadlord's back as he is spoken to
call ScriptActCameraFace(t+16.2, 2, 50,-300,150, false, 0.0)
call ScriptCameraStat(t+16.2, 9, 0.0, 200.0,0.0, 1) //close up
call ScriptCameraStat(t+16.5, 9, 5.0, 600.0,0.0, 3) //zoom out slowly again
call ScriptPlaySound(t+16.5, "Sound\\Dialogue\\NightElfCampaign\\NightElf06\\N06Illidan22.mp3", 1.25, 96)
call ScriptSubtitleLine(t+16.5, "Let's see how confident you are against one of your own kind, Dreadlord!")
call ScriptSubtitleClear(t+21.0)
call ScriptActAnimSpeed(t+16.8, 2, 0.0) //dreadlord freezes a bit as he hears the voice
call ScriptActAnimSpeed(t+17.6, 2, 0.5)
call ScriptActTurn(t+17.8, 2, 100.0, 2.0, 0) //Make the dread lord turn towards the demon hunter
call ScriptActFace(t+17.7, 2,1, 0, 0,0,100, 0.75) //Make the dreadlord face the demon hunter
//zoom in on the demon hunter
call ScriptCamera(t+22.0, 2, 1.0, 1) //Change the camera instantly to camera[2]
call ScriptActCameraLockReset(t+22.0, false, 0.0) //reset camera lock
call ScriptActCameraFaceReset(t+22.0, false, 0.0)
call ScriptFog(t+24.5, 100.0, 5000.0, 35,35,40, 0) //lightning strike
call ScriptExternalFunc(t+24.5, "Lightning1")
call ScriptFade(t+24.5, 90,90,96,10, 0.0)
call ScriptFog(t+24.6, 100.0, 5000.0, 15,15,16, 0) //back to default fog and fade
call ScriptExternalFunc(t+24.6, "LightningCleanup")
call ScriptFade(t+24.6, 0,0,0,0, 0.0)
call ScriptPlaySound(t+24.8, "Doodads\\Cinematic\\Lightningbolt\\LightningBolt1.wav", 1.0, 120 )
call ScriptCameraStat(t+24.7, 9, 0.0, 1500.0,0.0, 1) //9-distance to target, 1-instant change
call ScriptCameraStat(t+27.4, 9, 0.0, 650.0,0.0, 1) //9-distance to target, 1-instant change
call ScriptFog(t+26.0, 100.0, 5000.0, 43,43,50, 0) //lightning strike
call ScriptFade(t+26.0, 90,90,96,10, 0.0)
call ScriptFog(t+26.1, 100.0, 5000.0, 15,15,16, 0) //back to default fog and fade
call ScriptFade(t+26.1, 0,0,0,0, 0.0)
call ScriptFog(t+26.5, 100.0, 5000.0, 35,35,40, 0) //lightning strike
call ScriptFade(t+26.5, 90,90,96,10, 0.0)
call ScriptFog(t+26.6, 100.0, 5000.0, 15,15,16, 0) //back to default fog and fade
call ScriptFade(t+26.6, 0,0,0,0, 0.0)
call ScriptPlaySound(t+26.9, "Doodads\\Cinematic\\Lightningbolt\\LightningBolt1.wav", 0.75, 90 )
//show the dreadlord portrait
call ScriptActSlide(t+29.0, 9, 800+512, -1600-512, 0.0, 0.0) //put the portrait into position
call ScriptActTurn(t+29.0, 9, 90.00, 0, 0)
call ScriptActSize(t+29.0, 9, 2.0, 0)
call ScriptCamera(t+29.5, 3, 1.0, 1) //Change the camera instantly to camera[3]
call ScriptPlaySound(t+29.5, "Units\\Undead\\Varimathras\\VarimathrasYes4.wav", 1.10, 96)
call ScriptActAnimSpeed(t+29.5, 9, 0.25)
call ScriptActAnimPlay(t+29.6, 9, 1, 0.15) //dreadlord portrait talk animation
call ScriptSubtitleLine(t+29.7, "Right...")
call ScriptActAnimPlay(t+30.5, 9, 0, 0.15) //dreadlord portrait stand animation
call ScriptSubtitleClear(t+30.7)
call ScriptActSlide(t+31.0, 9, -3000,0, 0.0, 0.0) //put the portrait in a place where it won't bother us
//show the demon hunter portrait
call ScriptActSlide(t+30.0, 8, 450, 1100+256, 0.0, 0.0) //put the portrait into position
call ScriptActTurn(t+30.0, 8, 270.00, 0, 0)
call ScriptActSize(t+30.0, 8, 2.0, 0)
call ScriptCamera(t+30.8, 4, 1.0, 1) //Change the camera instantly to camera[4]
call ScriptPlaySound(t+31.0, "Units\\NightElf\\Illidan\\IllidanYesAttack2.wav", 0.92, 127)
call ScriptActAnimPlay(t+31.0, 8, 1, 0.15) //demon hunter portrait talk animation
call ScriptSubtitleLine(t+31.1, "Die fool!")
call ScriptActAnimPlay(t+32.0, 8, 0, 0.15) //demon hunter portrait stand animation
call ScriptSubtitleClear(t+32.0)
call ScriptActSlide(t+32.1, 8, 450, 1100+128, 0.8, 0.0) //move portrait forward right before the camera change
call ScriptActSlide(t+32.2, 8, -3000,0, 0.0, 0.0) //put the portrait in a place where it won't bother us
call ScriptActFaceReset(t+24.0, 2, 0.5)
call ExecuteFunc("Scene1Part2")
endfunction
//we break up the initialization into multiple functions
//for organizational reasons and to avoid hitting the threadlimit
function Scene1Part2 takes nothing returns nothing
local real t = 32.0
local integer i = 0
//we re-setup the actor positions so we can use PlaySceneFromTime at this point when testing:
call ScriptActSlide(t+0.0, 2, 800, -1600, 0.0, 0.0)
call ScriptActTurn(t+0.0, 2, 100.00, 0, 0)
call ScriptActSlide(t+0.0, 1, 450, 1100, 0.0, 0.0)
//the demon hunter charges towards the dreadlord, who begins channeling a spell
call ScriptFog(t+0.5, 100.0, 5000.0, 43,43,50, 0) //lightning strike
call ScriptFade(t+0.5, 90,90,96,10, 0.0)
call ScriptFog(t+0.6, 100.0, 5000.0, 15,15,16, 0) //back to default fog and fade
call ScriptFade(t+0.6, 0,0,0,0, 0.0)
call ScriptPlaySound(t+1.2, "Doodads\\Cinematic\\Lightningbolt\\LightningBolt1.wav", 1.0, 120 )
call ScriptCamera(t+0.2, 5, 1.0, 1) //Change the camera instantly to camera[5]
call ScriptActCameraFace(t+0.2, 1, 0,-192,128, false, 0.0) //follow the demon hunter with the camera
call ScriptActWalk(t+0.2, 1, 800, -1500, 7.0, 0.15) //demon hunter run
call ScriptActCameraFace(t+0.3, 2, -256,0,-128, true, 3.2) //focus from the demon hunter to dreadlord
call ScriptActAnimSpeed(t+2.3, 2, 0.25) //slow down the start of the animation so it seems like the dread lord is gathering energy
call ScriptActAnimPlay(t+2.4, 2, 6, 0.15) //dreadlord spell slam animation
call ScriptActEffect(t+2.6, 2, "Abilities\\Spells\\Other\\AcidBomb\\BottleImpact.mdl", "hand left", 1.8)
call ScriptActEffect(t+2.6, 2, "Abilities\\Spells\\Other\\AcidBomb\\BottleImpact.mdl", "hand right", 1.8)
// call ScriptActEffect(t+2.6, 2, "Abilities\\Spells\\Other\\Drain\\DrainTarget.mdl", "hand right", 1.8)
// call ScriptActEffect(t+2.6, 2, "Abilities\\Spells\\Undead\\Darksummoning\\DarkSummonMissile.mdl", "hand right", 1.8)
//the dreadlord unleashes the spell
call ScriptActCameraLock(t+3.2, 2, -300,100,100, false, 0.0) //focus camera on the dreadlord
call ScriptActCameraFace(t+3.2, 2, 0,50,50, false, 0.0)
call ScriptCameraStat(t+3.2, 9, 0.0, 100.0,0.0, 1) //close up
call ScriptActCameraLock(t+3.3, 2, -400,150,400, true, 3.0) //move the camera source
call ScriptActAnimSpeed(t+4.0, 2, 1.25) //speed up the spell animation to let it finish
call ScriptPlaySound(t+4.2, "Abilities\\Spells\\Undead\\CarrionSwarm\\CarrionSwarmDamage3.wav", 0.80, 127 ) //spell osund effect
loop //spell effect line
set i=i+1
exitwhen i>= 25
call ScriptPointEffect(t+4.3+i*0.1, 800-(12*i),-1600+(90*i),0, "Abilities\\Spells\\Undead\\AnimateDead\\AnimateDeadTarget.mdl",0.0)
endloop
//the demon hunter dodges
call ScriptActCameraFace(t+4.4, 1, 0,0,70, true, 0.7) //switch camera focus to the demon hunter
call ScriptActAnimSpeed(t+4.9, 1, 1.00) //normal animation speed
call ScriptActAnimPlay(t+4.9, 1, 6, 0.15) //demon hunter spinning attack
call ScriptActSlide(t+4.9, 1, 400, -1000, 1.0, 200.0)
call ScriptActSlide(t+5.9, 1, 380, -1010, 0.25, 0.0) //slide a bit further after the jump
call ScriptActEffect(t+5.9, 1, "Objects\\Spawnmodels\\Undead\\ImpaleTargetDust\\ImpaleTargetDust.mdl", "origin", 0.0)
//the two champions clash
call ScriptActWalk(t+6.2, 1, 700, -1500, 1.3, 0.15)
call ScriptActCameraLock(t+6.0, 2, -450,-300,80, true, 1.0) //move the camera source
call ScriptActCameraFace(t+6.0, 1, 200,0,60, true, 1.0) //switch camera focus a bit ahead of the demon hunter to see the dreadlord as well
call ScriptPlaySound(t+7.0, "Sound\\Interface\\BattleNetWooshStereo1.wav", 1.00, 127 ) //slow-motion effect sound
call ScriptActCameraFace(t+7.0, 1, 100,0,60, true, 0.5*10) //as they get closer, the camera no longer needs to be focused so far ahead of the demon hunter
call ScriptActAnimSpeed(t+7.0, 1, 0.1) //slow motion
call ScriptActAnimPlay(t+7.0, 1, 6, 0.25) //demon hunter spinning attack
call ScriptActSlide(t+7.0, 1, 700, -1500, 5.0, 5.0)
call ScriptActAnimSpeed(t+7.0, 2, 0.1) //slow motion
call ScriptActAnimPlay(t+7.0, 2, 9, 0.15) //dreadlord attack
call ScriptActTurn(t+7.0+0.2*10, 2, 135.00, 0.3*10, 0) //dreadlord turns towards his enemy as he attacks
call ScriptFade(t+10.8, 100,100,100,0, 0.0) //prepare for a white fade
call ScriptFade(t+11.0, 100,100,100,100, 0.5) //fade out to pure white as they clash
call ScriptFade(t+12.0, 0,0,0,100, 3.0)
//to be continued...
call ScriptExternalFunc(t+11.2, "MusicStop") //stop the music
call ScriptExternalFunc(t+15.0, "Trig_EndMovie_Actions") //This function will call the GUI trigger EndMovie, remember that jass is case sensitive and forgetting about it will crash the game. Also remember to replace any spaces by _
endfunction
//===========================================================================
function InitTrig_Sample_Scene_1 takes nothing returns nothing
set gg_trg_Sample_Scene_1 = CreateTrigger( )
call TriggerAddAction( gg_trg_Sample_Scene_1, function Scene1Part1 )
endfunction
E agora cria 1 Trigger comments chamada: GUI Triggers called from the sample
E cria uma trigger logo abaixo chamada: EndMovie
E dentro dela:
Bom, é isso ae.. Postado 1 video do cinematic em processo:EndMovie
Events
Player - Player 1 (Red) skips a cinematic sequence
Conditions
Actions
Cinematic - Turn cinematic mode Off for (All players)
Custom script: call CinematicCameraDisable()
Game - Victory Player 1 (Red) (Skip dialogs, Skip scores)
- Spoiler:
- Tá ae o Video
A Tela inteira. Engraçado que nunca grava dentro do Warcraft III a Tela toda.. Isso eu não sei pq, então eu dei 1 Zoom pra melhorar xD)
Créditos a: Anitarf
Status do Mapa:
Segurança: OFF
Local Started: Battle.net and Garena
Linguajar(Idioma): Português – Brasil (PT – BR)
Empresa: Staar. Productions
Link de DownLoad (DL) no EpicWar: Staar. Productions (Clique aqui para baixar o mapa)
Última edição por Staar. em 2010-10-14, 22:42, editado 3 vez(es)
Staar.- Número de Posts : 408
Data de inscrição : 24/07/2010
Reputação : 14 Pontos : 26918
Re: [Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
num é tipo..
mais fácil criar 10 câmeras não?
vo esperar ficar pronto primeiro
mais fácil criar 10 câmeras não?
vo esperar ficar pronto primeiro
Raziel_br- Número de Posts : 3346
Data de inscrição : 22/10/2008
Reputação : 53 Pontos : 32999
Re: [Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
Pronto, Tutorial Completo! (Uffa .. Finalmente, Que trabalheira que me deu.. '-')
Mas vlw a pena, ajuda bastante gente
(Incluido um Video do Cinematic)
Edit: *VIDEO
Mas vlw a pena, ajuda bastante gente
(Incluido um Video do Cinematic)
Edit: *VIDEO
Staar.- Número de Posts : 408
Data de inscrição : 24/07/2010
Reputação : 14 Pontos : 26918
Re: [Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
er.. UP! :X
xD... UHAUAH
Pq fiz isso n sei, mas acho que ninguem viu a cinematic que está escrito (COMPLETO) ^^
xD... UHAUAH
Pq fiz isso n sei, mas acho que ninguem viu a cinematic que está escrito (COMPLETO) ^^
Staar.- Número de Posts : 408
Data de inscrição : 24/07/2010
Reputação : 14 Pontos : 26918
Re: [Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
hahaha... Vlw.. =p
Staar.- Número de Posts : 408
Data de inscrição : 24/07/2010
Reputação : 14 Pontos : 26918
Re: [Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
Muito interessante o cinematic
Assim que tiver tempo vou dar uma boa olhada...
Assim que tiver tempo vou dar uma boa olhada...
DarTiN- Número de Posts : 476
Data de inscrição : 25/07/2010
Reputação : 33 Pontos : 26807
Re: [Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
mais tipo, u não entendi muito bem o porque das variáveis, voce poderia explicar melhor?
Raziel_br- Número de Posts : 3346
Data de inscrição : 22/10/2008
Reputação : 53 Pontos : 32999
Re: [Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
Bom, como eu estava digitando 1 texto bem grande e a net caiu.. achei put... sacanagem U_U
Então vo direto ao assunto.
Não fui eu que fiz esse cinematic, então não sei direito pra que tanta variable
Então vo direto ao assunto.
Não fui eu que fiz esse cinematic, então não sei direito pra que tanta variable
Staar.- Número de Posts : 408
Data de inscrição : 24/07/2010
Reputação : 14 Pontos : 26918
Re: [Tutorial] Cinematic Avançado (Atualizado e COMPLETO)
muito bom vou tentar fazer um desses
SN.Edysefer- Número de Posts : 93
Data de inscrição : 28/12/2012
Reputação : 1 Pontos : 22772
Tópicos semelhantes
» [Tutorial] Basico de um Cinematic
» [Tutorial] Cinematic Movie
» Tutorial World Editor Completo
» [Tutorial] Funções Básicas WE (PRINTS + COMPLETO)
» [Pedido abusado] Tutorial COMPLETO de World Edit
» [Tutorial] Cinematic Movie
» Tutorial World Editor Completo
» [Tutorial] Funções Básicas WE (PRINTS + COMPLETO)
» [Pedido abusado] Tutorial COMPLETO de World Edit
TeaM KingS :: Games: :: Warcraft: World Editor :: Tutoriais: Gui, Jass, Spells, Terrain, Modelagem, Textura :: Triggers(GUI)
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos