[ Обновленные темы · Новые сообщения · Участники · Поиск · RSS ]
Результаты поиска
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
Avaible in download and on link https://www.sendspace.com/file/901xmb.
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
Best solution? Make it manually in hex. It's almost impossible that Alexbond add this option to xom_view.
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
I look.

Добавлено (12.09.2014, 19:09)
---------------------------------------------
Want know how look worm animation with this bottle?

 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11


Finally learn how make HD icons like that )))

Добавлено (26.09.2014, 17:35)
---------------------------------------------
With AlexBond we found way how to change UV icons in panel. Now is possible change places for icons in panel.



Here are new icons for 3 new weapon + 2 old for SBB and Napalm.

Добавлено (27.09.2014, 02:19)
---------------------------------------------
ID for Weapon Panel 0-60

inventory.Bazooka = -1
inventory.Grenade = -1
inventory.ClusterGrenade = -1
inventory.Airstrike = -1
inventory.Dynamite = -1
inventory.HolyHandGrenade = -1
inventory.BananaBomb = -1
inventory.Landmine = -1
inventory.Shotgun = -1
inventory.Uzi = -1
inventory.BaseballBat = -1
inventory.Prod = -1
inventory.VikingAxe = -1
inventory.FirePunch = -1
inventory.HomingMissile = -1
inventory.Mortar = -1
inventory.HomingPidgeon = -1
inventory.Earthquake = -1
inventory.Sheep = -1
inventory.MineStrike = -1 --Mine Strike
inventory.PetrolBomb = -1
inventory.GasCanister = -1
inventory.SheepStrike = -1 --French Sheep Strike
inventory.MadCow = -1
inventory.OldWoman = -1
inventory.ConcreteDonkey = -1
inventory.NuclearBomb = -1
inventory.Armageddon = -1 --Napalm Strike
inventory.MagicBullet = -1 --Super Banana Bomb
inventory.SuperSheep = -1
inventory.Blowpipe = -1
inventory.LotteryStrike = -1
inventory.DoctorsStrike = -1
inventory.MegaMine = -1
inventory.StickyBomb = -1
inventory.Binoculars = -1
--36 Free
--37 free
--38 free
inventory.Girder = -1
inventory.BridgeKit = -1
inventory.NinjaRope = -1
inventory.Parachute = -1
inventory.ScalesOfJustice = -1
inventory.LowGravity = -1
inventory.QuickWalk = -1
inventory.LaserSight = -1 --Ming Vase
inventory.Teleport = -1
inventory.Jetpack = -1
inventory.SkipGo = -1
inventory.Surrender = -1
inventory.ChangeWorm = -1
inventory.Freeze = -1
inventory.Redbull = -1
--nothing
--nothing
--nothing
--nothing
--nothing
--nothing
--60 Break


Сообщение отредактировал Woitek - СБ, 27.09.2014, 02:27:16
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
Not sure end date. But we make demo now for preview. About new panel I soon try upload more screenshots.
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
http://w4tweaks.ru/load/ here soon. Need more time for release

Добавлено (29.09.2014, 20:53)
---------------------------------------------

Добавлено (29.09.2014, 20:54)
---------------------------------------------
New Weapon Panel =)

 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11

Добавлено (05.10.2014, 21:19)
---------------------------------------------


This is screen from new Mission "Cocons Up"

When release this mission I put code in lua lessons and explain how it work. It should help beginners how to make own mission.

Добавлено (07.10.2014, 21:23)
---------------------------------------------


Cocons Up Test

 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
--Cocons Up
--Map by Alexbond

function Initialise()

    SendMessage("Commentary.NoDefault")
    bronzetime = (60 * 1000) * 9999
    silvertime = (60 * 1000) * 25
    goldtime = (60 * 1000) * 20

    SetData("Camera.StartOfTurnCamera","Default")
 
    SetData("Camera.Path.IgnoreInput", 1)    
 
    SetData("Mine.DudProbabilty", 0.1)
    SetData("Mine.MinFuse", 1000)
    SetData("Mine.MaxFuse", 5000)
    SetData("TurnTime", 0)
    SetData("RoundTime", 1500000)
    
    CrateCount = 0
    CratesCollected = false
    
    SetData("Camera.StartOfTurnCamera","Default")
    SetData("Camera.GameOverCamera", "Orbit")
    SendStringMessage("Camera.Disable", "Orbit") 
    SendStringMessage("Camera.Disable", "Blimp") 
    CrateSpawn()

    SetupWormsAndTeams()
    SetupInventories()
    Intro()
    --startt()

end

function SelectRandomWind()
   SetData("Wind.Speed", 0.0)
end

function SituationText()
    SetData("Text.TestComment", "It might be difficult situation for you!")
    SetData("CommentaryPanel.Comment", "Text.TestComment")
    SendMessage("CommentaryPanel.ScriptText") 
end

function SituationAnim()
    SendIntMessage("Worm.ResetAnim", 0)
    SetData("Worm.ScriptAnim", "Horror")
    SendIntMessage("Worm.QueueAnim", 0)
end

function Intro()
    CameraFly = 1
    SendMessage("EFMV.Start")
    StartTimer("SituationAnim", 10)
    StartTimer("SituationText", 1000)
    SetData("Camera.Path.Knots.Position", "Pos1")
SetData("Camera.Path.Knots.LookAt", "Look1")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 0)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("Intro2", 4500)
end

function SpiderText()
    SetData("Text.TestComment", "Spider mom looks little hungry...")
    SetData("CommentaryPanel.Comment", "Text.TestComment")
    SendMessage("CommentaryPanel.ScriptText") 
end

function Intro2()
    CameraFly = 1
    StartTimer("SpiderText", 1500)
    SetData("Camera.Path.Knots.Position", "Pos2,Pos3")
SetData("Camera.Path.Knots.LookAt", "Look2")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 500)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("Intro3", 4000)
end

function ExistText()
    SetData("Text.TestComment", "But exist exit from this situation")
    SetData("CommentaryPanel.Comment", "Text.TestComment")
    SendMessage("CommentaryPanel.ScriptText") 
end

function ExistAnim()
    SendIntMessage("Worm.ResetAnim", 0)
    SetData("Worm.ScriptAnim", "Angry3")
    SendIntMessage("Worm.QueueAnim", 0)
end

function Intro3()
    CameraFly = 1
    StartTimer("ExistText", 500)
ExistAnim()
    SetData("Camera.Path.Knots.Position", "Pos1")
SetData("Camera.Path.Knots.LookAt", "Look1")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 0)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("Intro4", 3200)
end

function BabyText()
    SetData("Text.TestComment", "Colllect six spider babies...")
    SetData("CommentaryPanel.Comment", "Text.TestComment")
    SendMessage("CommentaryPanel.ScriptText") 
end

function BabyText2()
    SetData("Text.TestComment", "and bring them back to the mother!")
    SetData("CommentaryPanel.Comment", "Text.TestComment")
    SendMessage("CommentaryPanel.ScriptText") 
end

function Intro4()
    CameraFly = 1
BabyText()
    SetData("Camera.Path.Knots.Position", "Pos4")
SetData("Camera.Path.Knots.LookAt", "Crate1")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 0)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("Intro4_1", 1000)
end

function Intro4_1()
    CameraFly = 1
    SetData("Camera.Path.Knots.Position", "Pos5")
SetData("Camera.Path.Knots.LookAt", "Crate2")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 0)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("Intro4_2", 1000)
end

function Intro4_2()
    CameraFly = 1
    StartTimer("BabyText2", 500)
    SetData("Camera.Path.Knots.Position", "Pos6")
SetData("Camera.Path.Knots.LookAt", "Crate3")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 0)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("Intro4_3", 1000)
end

function Intro4_3()
    CameraFly = 1
    SetData("Camera.Path.Knots.Position", "Pos7")
SetData("Camera.Path.Knots.LookAt", "Crate4")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 0)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("Intro4_4", 1000)
end

function Intro4_4()
    CameraFly = 1
DinnerAnim()
    SetData("Camera.Path.Knots.Position", "Pos8")
SetData("Camera.Path.Knots.LookAt", "Crate5")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 0)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("Intro4_5", 1000)
end

function Intro4_5()
    CameraFly = 1
    SetData("Camera.Path.Knots.Position", "Pos9")
SetData("Camera.Path.Knots.LookAt", "Crate6")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 0)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("Intro5", 1000)
end

function DinnerText()
    SetData("Text.TestComment", "Then maybe you not end as next dinner!")
    SetData("CommentaryPanel.Comment", "Text.TestComment")
    SendMessage("CommentaryPanel.ScriptText") 
end

function DinnerAnim()
    SendIntMessage("Worm.ResetAnim", 0)
    SetData("Worm.ScriptAnim", "Disbelief1")
    SendIntMessage("Worm.QueueAnim", 0)
end

function Intro5()
    CameraFly = 1
    StartTimer("DinnerText", 1000)
    SetData("Camera.Path.Knots.Position", "Pos1")
SetData("Camera.Path.Knots.LookAt", "Look1")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 0)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SendMessage("Camera.Path.Start")
CamLoop = StartTimer("startt", 3500)
end

function Spider()
    SetData("Text.TestComment", "It's time for dinner!")
    SetData("CommentaryPanel.Comment", "Text.TestComment")
    SendMessage("CommentaryPanel.ScriptText") 
end

function SpiderFailure()
    --CameraFly = 1
    SendMessage("EFMV.Start")
    StartTimer("Spider", 500)
    SetData("Camera.Path.Knots.Position", "Pos11,Pos12")
SetData("Camera.Path.Knots.LookAt", "Look2")
SetData("Camera.Path.Loop.Position", 0)
SetData("Camera.Path.Loop.LookAt", 0)
SetData("Camera.Path.Steps.Position", 250)
SetData("Camera.Path.Steps.LookAt", 0)
SetData("Camera.Path.Tension.Position", 0)
SetData("Camera.Path.Tension.LookAt", 0)
SetData("Camera.Path.IgnoreInput", 1) 
SendMessage("Camera.Path.Start")
StartTimer("End", 1500)
        --FailureMessages()
end

function End()
            SendMessage("GameLogic.Mission.Failure")
end

function CrateSpawn()
SetData("Crate.Spawn", "Crate1")
SetData("Crate.Type", "Weapon")
SetData("Crate.NumContents", 0)
SetData("Crate.Contents", "kWeaponBazooka")
SetData("Crate.Index", 1)
SetData("Crate.Pushable", 0)
    SetData("Crate.TeamDestructible", 10)
    SetData("Crate.TrackCam", 0)
    SendMessage("GameLogic.CreateCrate")

SetData("Crate.Spawn", "Crate2")
SetData("Crate.Type", "Weapon")
SetData("Crate.NumContents", 0)
SetData("Crate.Contents", "kWeaponBazooka")
SetData("Crate.Index", 2)
SetData("Crate.Pushable", 0)
    SetData("Crate.TeamDestructible", 10)
    SetData("Crate.TrackCam", 0)
    SendMessage("GameLogic.CreateCrate")

SetData("Crate.Spawn", "Crate3")
SetData("Crate.Type", "Weapon")
SetData("Crate.NumContents", 0)
SetData("Crate.Contents", "kWeaponBazooka")
SetData("Crate.Index", 3)
SetData("Crate.Pushable", 0)
    SetData("Crate.TeamDestructible", 10)
    SetData("Crate.TrackCam", 0)
    SendMessage("GameLogic.CreateCrate")

SetData("Crate.Spawn", "Crate4")
SetData("Crate.Type", "Weapon")
SetData("Crate.NumContents", 0)
SetData("Crate.Contents", "kWeaponBazooka")
SetData("Crate.Index", 4)
SetData("Crate.Pushable", 0)
    SetData("Crate.TeamDestructible", 10)
    SetData("Crate.TrackCam", 0)
    SendMessage("GameLogic.CreateCrate")

SetData("Crate.Spawn", "Crate5")
SetData("Crate.Type", "Weapon")
SetData("Crate.NumContents", 0)
SetData("Crate.Contents", "kWeaponBazooka")
SetData("Crate.Index", 5)
SetData("Crate.Pushable", 0)
    SetData("Crate.TeamDestructible", 10)
    SetData("Crate.TrackCam", 0)
    SendMessage("GameLogic.CreateCrate")

SetData("Crate.Spawn", "Crate6")
SetData("Crate.Type", "Weapon")
SetData("Crate.NumContents", 0)
SetData("Crate.Contents", "kWeaponBazooka")
SetData("Crate.Index", 6)
SetData("Crate.Pushable", 0)
    SetData("Crate.TeamDestructible", 10)
    SetData("Crate.TrackCam", 0)
    SendMessage("GameLogic.CreateCrate")
end

function Crate_Collected()
    CrateCount = CrateCount + 1
    SendMessage("Commentary.Clear")
    SendMessage("Commentary.NoDefault")
    DisplayCollectComment()
if CrateCount == 6 then
    WON()
end
end

function DisplayCollectComment()
   local Comment = { "That's it!", "Keep going!", "Just a few more!" }
   SendMessage("RandomNumber.Get")
   local RandomNumber = GetData("RandomNumber.Uint")
   local MyRandomNumber = math.mod(RandomNumber, 3) + 1
  -- SendMessage("Commentary.Clear")  
   SetData("Text.TestComment", Comment [MyRandomNumber])
   SetData("CommentaryPanel.Comment", "Text.TestComment")
   SetData("CommentaryPanel.Delay", 3000)
   SendMessage("CommentaryPanel.TimedText")
end

function startt()
    CameraFly = 0
    StartFirstTurn()
    SendMessage("EFMV.End")
end

function StartTurn()
    done_once_per_turn_functions = false
    SendMessage("Timer.StartHotSeatTimer")
    SendMessage("GameLogic.ActivateNextWorm")
    SendMessage("Weapon.Create")
    SetWind()
    SendMessage("GameLogic.Turn.Started")
    TurnStarted()
    RunAILogic()
else    
end

function StartFirstTurn()
   WaitUntilNoActivity = false
   SendMessage("Timer.StartGame")
   SendMessage("EFMV.End")
   StartTurn()
end

function Camera_Path_Stopped()
    if CameraFly == 1 then
        SendMessage("Commentary.Clear")
        CameraFly = 0
        CancelTimer(CamLoop)
        if TimerControl == 1 then
            CancelTimer(TextTime)
            TimerControl = 0
        end
        SendMessage("EFMV.End")
        StartFirstTurn()
    end
end

function TurnEnded()
    RoundTimeRemaining = GetData("RoundTimeRemaining")
    if (RoundTimeRemaining == 0 or RoundTimeRemaining < 0) and StartedSuddenDeath == false then
    SpiderFailure()
    end
    CheckOneTeamVictory()    
end

function CheckOneTeamVictory()
    SendMessage("WormManager.GetActiveTeamCount")
    TeamCount = GetData("TeamCount")
    if TeamCount == 0 then
SpiderFailure()
    else
    StartTurn()
    end
end

function FailureMessages()

    SendMessage("Commentary.Clear")
    SendMessage("Commentary.NoDefault")
    
    -- makes up a random number between 1 and 5
    SendMessage("RandomNumber.Get")
    RandomNumber = GetData("RandomNumber.Uint")
    MyRandomNumber = math.mod(RandomNumber, 5) + 1
   
    if MyRandomNumber == 1 then
        SetData("CommentaryPanel.Comment", "Miss.Generic.Lose1")
        SendMessage("CommentaryPanel.ScriptText")
    elseif MyRandomNumber == 2 then
        SetData("CommentaryPanel.Comment", "Miss.Generic.Lose2")
        SendMessage("CommentaryPanel.ScriptText")
    elseif MyRandomNumber == 3 then
        SetData("CommentaryPanel.Comment", "Miss.Generic.Lose3")
        SendMessage("CommentaryPanel.ScriptText") 
    elseif MyRandomNumber == 4 then
        SetData("CommentaryPanel.Comment", "Miss.Generic.Lose4")
        SendMessage("CommentaryPanel.ScriptText")
    elseif MyRandomNumber == 5 then
        SetData("CommentaryPanel.Comment", "Miss.Generic.Lose5")
        SendMessage("CommentaryPanel.ScriptText")        
    end
    
end

function WON()
    
    timetook = GetData("ElapsedRoundTime")
    
    if timetook < bronzetime then
        Movie = 1 
        if timetook < silvertime then
            Movie = 2
            if timetook < goldtime then
                Movie = 3                
            end
        end
    end
    
    
    if Movie == 1 then
        SetData("MCa.LastGameTime", 1)
        SetData("GameOver.AwardMovie","bronze")
    elseif Movie == 2 then
        SetData("MCa.LastGameTime", 2)
        SetData("GameOver.AwardMovie","silver")
    elseif Movie == 3 then
        SetData("MCa.LastGameTime", 3)
        SetData("GameOver.AwardMovie","gold")
    end
    
    SendMessage("GameLogic.Mission.Success")

end

function SetupWormsAndTeams()
    GM = QueryContainer("GM.GameInitData")
    lock, team = EditContainer("Team.Data00") 
    team.Active = true
    team.Name = GM.T1_Name
    team.FlagGfxName = GM.T1_Flag
    team.GraveIndex = GM.T1_Grave
    team.TeamColour = 0
    CloseContainer(lock)

    lock, worm = EditContainer("Worm.Data00") 
    worm.Active = true
    worm.Name = GM.T1_W1_Name
    worm.SfxBankName = GM.T1_Speech
    worm.Spawn = "Worm1"
    worm.Energy = 100
    worm.WeaponFuse = 3
    worm.WeaponIsBounceMax = false
    worm.TeamIndex = 0
    CloseContainer(lock) 

   SendMessage("WormManager.Reinitialise")
end

function SetupInventories()
    lock, inventory = EditContainer("Inventory.Team00")
    --inventory.Teleport = -1
    --inventory.Jetpack = -1
    inventory.Binoculars = -1
    inventory.Parachute = -1
    inventory.SkipGo = 0
    inventory.Surrender = 0
    CloseContainer(lock) 
end

Добавлено (10.10.2014, 00:55)
---------------------------------------------
I will update this post soon. With explanation how this script work.

 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
Links: http://w4tweaks.ru/forum/90-2260-1#61632  --Example mission

Welcome in Worms 3D Lua tutorial thread.

Today we learn how to:
-Make concept for your mission
-Add pointers to map and with what do.
-Test your map.
-Script mission.

First step to any mission desing is initial idea. It can be map or events what will happen in mission.

If we have concept of mission example:

We want make mission where be one worm, and this worm need collect using jetpack some crates. So if we know how mission will look we can start make prototype mission. For Prototype missions (if we don't have ready map) better make simple objects, like big cubes. There is no reason for make very detail map if we reject it and put to trash. Other look situation when we have map. Example:

We have map what looks like Shop. Inside shop are many food stuff and other objects what are used in shops.
Exaple mission can looks like:

Is one worm. On map is spawned one crate. If we collect all crates(foodstuffs) then mission succes!.

Good for plan mission is Piece or paper or word documentation because we freedom here. We can concept here any part of mission without touching fingers!

When we know general concept how should mission, then we can try realise concept to reality.

In Worms 3D scripting are some function what have to be in missions for correct work like:

function Initialise() --This is main function for every worms 3D mission. Here are written basics parametrs about some status.

function StartTurn() --This function initialise when Turn start.

function TurnEnded() -- This function work when Turn is ended.

function SetupWormsAndTeams() -- This function work once. Is called in Initialise() function. Here are set all Teams and Worms parametrs.

function SetupInventories() -- This function work once. Is called in Initialise() function. Here you can set amount of weapons Ammo and delays.


Сообщение отредактировал Woitek - ПТ, 10.10.2014, 21:51:57
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
This check that StartTurn functions inside are initialised once per turn I guess. I never change this variable. It exist in standard function so better not touch this.
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
function DoPostActivity()
if done_once_per_turn_functions == true then
SendMessage("GameLogic.Turn.Ended")
TurnEnded()
else
-- Done only once
SendMessage("Worm.ApplyPoison")
SetData("DoubleDamage", 0)
DoOncePerTurnFunctions()
done_once_per_turn_functions = true
CheckActivity() -- in case an earthquake or similar was just started
end
end

This is for coordinate functions what happen once in turn. Example if worm check Double damage then set this to 0 after turn end.
This is also standard function in stdlib.lua liblary


Сообщение отредактировал Woitek - СБ, 11.10.2014, 16:36:26
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
function DisplayCollectComment()  --make function.
 local Comment = { "That's it!", "Keep going!", "Just a few more!" }  --Make local class(can be used only in this function) with 3 elements. 1,2,3.
 SendMessage("RandomNumber.Get")  --Send Message to game for get random number.
local RandomNumber = GetData("RandomNumber.Uint")  -- Give variable RandomNumber Random Uint number (0 to 4 294 967 295)
 local MyRandomNumber = math.mod(RandomNumber, 3) + 1  --In short. Give variable MyRandomNumber values 1-3.
SetData("Text.TestComment", Comment [MyRandomNumber])  --add to this Text.TestComment value from class Comment
SetData("CommentaryPanel.Comment", "Text.TestComment")  -- Add my text to commentary panel
SetData("CommentaryPanel.Delay", 3000)  -- Give panel 3 seconds delay
SendMessage("CommentaryPanel.TimedText")  --Run Panel and if time gone (3 seconds) then panel off
end --End function

Добавлено (12.10.2014, 14:28)
---------------------------------------------
This function  is called here so
function Crate_Collected() --If Crate collected then
    CrateCount = CrateCount + 1 --Count how many crates we collect
    SendMessage("Commentary.Clear")  --Clear other commentary
    SendMessage("Commentary.NoDefault") --Make Commentary NoDefaults like from crates.
    DisplayCollectComment()  --Display text from previous function. Example we collect crate and we get message "Keep going!"
if CrateCount == 6 then --If we collect total 6 crates then
    WON() --function WON()
end -- end if
end  --end function

 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
13.10.2014 was released first Demo of Worms 3D Complete Edition. Demo features:

New Deathmatch Challenges: 12, 13, 15, 17, 22 And DMX1
+ New Music
+ New Missions 1-6
+ New Rope Race Missions 1-7
+ 6 New Custom Challenges

It's small taste of this what will feature in full version =). Progress with full was very slow so we decide to put demo version.

http://w4tweaks.ru/load/103-1-0-1801

For all who download this: 13.10.2014. Please redownload mod. Was fixed small glitch with unlock one level.
19.10.2014. One of users tell that SneakyBridge mission not work. thats true. Error was in .ntx file name...
Link for fix is here:
https://www.sendspace.com/file/kncs3p
Today I will reupload fix so for people who download it 20.10.2014 this path is not needed.


Сообщение отредактировал Woitek - ВС, 19.10.2014, 15:49:16
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
Hmmmm. Interesing!. I check it tommorow
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
I'm not sure about W4, but Worms 3D NTX can replace sky xoms.
But somethimes it can contains XBlend glitches for unknown reason.
Writting missions is also awful.


Сообщение отредактировал Woitek - ЧТ, 28.01.2016, 11:53:01
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
Do whatever you want. Yes, it's possible to convert missions from WUM to W4, but there no exist tools for convert it quickly. Code is same, not sure about W3D one, but rewrite it to work, isn't a big deal.
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
For effect like this need change exe. But is chance that this option be in W3Dlauncher by AlexBond.

Добавлено (05.02.2016, 22:59)
---------------------------------------------
End of session... It's time for small update).

 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
1. Export map to .3ds via Xom_view.
2. Resize whole model in 3D Editor like Wings 3D
3. Run W3dMapEditor and import model for test( If size of map fit to your preferences then:
4. Run Wings 3D again, Divide models to parts(example land,buildings, items). Every model save in separate 3ds file
5. Run again W3dMapEditor and press View/ Show 3D model
6. Now press File/Import .3ds and open one of divided models.
7. If converter don't make it look like in orginal delete poxel, make new one from 0, and try make it handmade.

Thats all.

The only way to reach effect near to perfect is hand making.
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
trta80, small tip, If you import model, then not delete poxel with was created by this option, use coordinates of this poxel to new one what you created by yourself, It generally always in center of 3D model. It can take some hours... Days...
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
https://steamcommunity.com/app/70600/discussions/0/405692124739606764/
 
Поиск: