1. Tämä sivusto käyttää keksejä (cookie). Jatkamalla sivuston käyttämistä hyväksyt keksien käyttämisen. Lue lisää.

Mohaa 3rd person modin teko

Viestiketju Käyttäjien tekemät oppaat -osiossa. Ketjun avasi _EffEcT_ 25.01.2008.

  1. _EffEcT_

    _EffEcT_ Regular member

    Liittynyt:
    25.11.2007
    Viestejä:
    756
    Kiitokset:
    0
    Pisteet:
    26
    Server-Side:

    Lataa PakScape.exe -ohjelma, jolla voit avata/tallentaa pk3-tiedostoja. Suorita pakscape ja paina file ja sitten New. Sitten tee uusi kansio nimeltä global ja avaa "muistio", pistä siihen alla oleva koodaus ja tallenna nimellä ambient.scr. Pistä tämä ambient.scr global kansioon!




    main local.music:

    exec global/savenames.scr
    exec global/3rd.scr

    level waittill spawn

    if (local.music != NIL)
    {
    local.string = ("music/" + local.music + ".mus")
    soundtrack local.string
    println ("playing " + local.string)
    forcemusic normal normal
    }

    level.gamma = 1
    level.hazerange = 0
    level.newhazerange = 0
    level.haze = 0
    if (level.gammacap == NIL)
    level.gammacap = 0
    level.farplanerate = 0.015



    println "Loading Ambient.scr"

    if ($interior == NULL)
    level.interiors = 0
    else
    level.interiors = $interior.size

    if (level.interiors > 0)
    {
    level.interior = exec global/makearray.scr $interior

    for (local.i=1;local.i<level.interiors+1;local.i++)
    {
    level.interior[local.i] thread interior

    if (level.interior[local.i].set == NIL)
    {
    println ("Warning, interior at " + level.interior[local.i].origin + " has no #set")
    level.interior[local.i].set = 1
    }
    else
    println ("Spawned interior " + local.i)

    if (level.interior[local.i].haze == NIL)
    level.interior[local.i].haze = -1

    }
    }

    if ($exterior == NULL)
    level.exteriors = 0
    else
    level.exteriors = $exterior.size

    if (level.exteriors > 0)
    {
    level.exterior = exec global/makearray.scr $exterior

    for (local.i=1;local.i<level.exteriors+1;local.i++)
    {
    level.exterior[local.i] thread exterior

    if (level.exterior[local.i].set == NIL)
    {
    println ("Warning, exterior at " + level.exterior[local.i].origin + " has no #set")
    level.exterior[local.i].set = 1
    }
    else
    println ("Spawned exterior " + local.i)

    if (level.exterior[local.i].haze == NIL)
    level.exterior[local.i].haze = -1

    }

    // thread lightlevel
    thread musiclevel
    }

    // thread exec global/door_locked.scr::lock


    exec global/ambience.scr

    end

    interior:

    if (getcvar(notrigger) == "1")
    {
    wait 4
    self delete
    end
    }

    while (1)
    {
    self waittill trigger

    /*
    if (self.set == 1)
    forcemusic aux2 aux2
    else
    if (self.set == 2)
    forcemusic aux4 aux4
    else
    if (self.set == 3)
    forcemusic aux6 aux6
    */

    /*
    if (self.haze != -1)
    level.newhazerange = self.haze
    else
    level.newhazerange = level.gammacap

    level.haze = 1
    */

    level.current_music = ("int" + self.set)
    // while ($player istouching self)
    // waitframe

    }

    end



    exterior:
    if (getcvar(notrigger) == "1")
    {
    wait 4
    self delete
    end
    }

    while (1)
    {
    self waittill trigger

    /*
    if (self.set == 1)
    forcemusic aux1 aux1
    else
    if (self.set == 2)
    forcemusic aux3 aux3
    else
    if (self.set == 3)
    forcemusic aux5 aux5
    */

    /*
    if (self.haze != -1)
    level.newhazerange = self.haze
    else
    level.newhazerange = level.gammacap

    level.haze = -1
    */

    level.current_music = ("ext" + self.set)
    // while ($player istouching self)
    // waitframe

    }


    end

    musiclevel:
    // level waittill spawn

    local.lastmusic = -1
    level.current_music = -1
    while (1)
    {
    if (level.current_music != local.lastmusic)
    {
    local.break = 0
    local.current_music = level.current_music

    for (local.i=0;local.i<6;local.i++)
    {
    if (level.current_music == local.lastmusic)
    local.break = 1

    waitframe
    }

    if (local.break == 0)
    if (level.current_music != local.lastmusic)
    {

    if (level.current_music == "ext1")
    forcemusic aux1 aux1
    else
    if (level.current_music == "ext2")
    forcemusic aux3 aux3
    else
    if (level.current_music == "ext3")
    forcemusic aux5 aux5
    else
    if (level.current_music == "int1")
    forcemusic aux2 aux2
    else
    if (level.current_music == "int2")
    forcemusic aux4 aux4
    else
    if (level.current_music == "int3")
    forcemusic aux6 aux6

    println ("forced music " + level.current_music)
    local.lastmusic = local.current_music
    }
    }

    wait 0.1
    }
    end


    lightlevel:
    level waittill spawn
    while (1==1)
    {
    if ((level.haze == 1) && (level.hazerange < level.newhazerange))
    {
    level.hazerange = level.hazerange + level.farplanerate
    if (level.hazerange > level.newhazerange)
    {
    level.hazerange = level.newhazerange
    level.haze = 0
    }
    }
    else
    if ((level.haze == -1) && (level.hazerange > 0))
    {
    level.hazerange = level.hazerange - level.farplanerate

    if (level.hazerange < 0.1)
    {
    level.hazerange = 0
    level.haze = 0
    }
    }

    if (level.hazerange > level.newhazerange)
    level.hazerange = level.newhazerange
    else
    if (level.hazerange < 0)
    level.hazerange = 0

    // println ("hazerange is " + level.hazerange)

    // local.farplanecolor = level.farplanecolor + ( level.hazerange level.hazerange level.hazerange )
    // $world farplane_color local.farplanecolor
    // setcvar r_farplane_color local.farplanecolor
    // local.gamma = level.gamma + level.hazerange
    setcvar r_gammabias (level.hazerange + 1)

    waitframe
    }


    end



    lighten:
    while ((level.haze == 1) && (level.hazerange < level.farplanerange))
    {
    local.farplanecolor = level.farplanecolor + ( level.hazerange level.hazerange level.hazerange )
    $world farplane_color local.farplanecolor
    setcvar r_farplane_color local.farplanecolor
    level.hazerange = level.hazerange + level.farplanerate
    wait 0.1
    }
    level.hazerange = 0.3
    local.farplanecolor = level.farplanecolor + ( level.hazerange level.hazerange level.hazerange )
    $world farplane_color local.farplanecolor
    setcvar r_farplane_color local.farplanecolor

    level.haze = 0
    end

    darken:
    while ((level.haze == -1) && (level.hazerange > 0.0))
    {
    local.farplanecolor = level.farplanecolor + ( level.hazerange level.hazerange level.hazerange )
    $world farplane_color local.farplanecolor
    setcvar r_farplane_color local.farplanecolor
    level.hazerange = level.hazerange - level.farplanerate
    wait 0.1
    }
    level.hazerange = 0
    local.farplanecolor = level.farplanecolor + ( level.hazerange level.hazerange level.hazerange )
    $world farplane_color local.farplanecolor
    setcvar r_farplane_color local.farplanecolor

    level.haze = 0

    end



    Avaa muistio uudelleen ja kopio tämä/liitä siihen:

    main:
    thread 3rd
    thread sboard

    setcvar "g_obj_alliedtext2" "-= 3rd Person =-"
    setcvar "g_obj_alliedtext3" "Tervetuloa!"
    setcvar "g_obj_axistext2" "Paina / 3rd person on/off!"
    setcvar "g_obj_axistext3" "Tehnyt: _EffEcT_"

    //Activates cheats to allow 3rd, turns 3rd on.
    3rd:
    if($player.size > 0)
    {
    setcvar cheats "1"
    setcvar thereisnomonkey "1"
    $player stufftext ("bind / toggle cg_3rd_person")
    }
    wait 10
    thread 3rd
    end


    //Gotta give me credits =)
    sboard:
    iprintln_noloc "Tervetuloa serveriin! Tämän modin on tehnyt _EffEcT_ !!"
    wait 2
    iprintln_noloc "webbisivu: Afterdawn.com ! "
    wait 2
    iprintln_noloc "Oppaan löydät Afterdawn -keskustelu alueelta!!"
    wait 58
    thread sboard
    end


    Sen jälkeen tallenna se nimellä 3rd.scr ja siirrä global kansioon, sitten tallenna tämä pk3 -tiedostona työpöydälle ja siirrä main directoryyn ja sitten vain runnaat serverin!

    Tämä on laiskoille, jotka eivät viitsi tehdä itse, joten laitoin latauksen tähän, jonka tein itse!
     
    Viimeksi muokattu: 25.01.2008
  2.  

Jaa tämä sivu