Page 2 of 2 FirstFirst 12
Results 11 to 13 of 13

Thread: Player nade control (Spearhead)

  1. #11
    Senior Member nene81's Avatar
    Join Date
    Nov 2014
    Location
    Seville, SPAIN
    Posts
    193

    Default

    Wow it seems great, very technical !

    I will test it!

    thanks mate!

  2. #12
    Senior Member nene81's Avatar
    Join Date
    Nov 2014
    Location
    Seville, SPAIN
    Posts
    193

    Default

    DoubleKill congratulations!!!, your method works perfectly!!!

    It was that I was looking for!

    Thank you.

  3. #13

    Default

    Hello nene81 continue after you with DoubleKill
    i have the same mod in my server but i want to control the player to take only 2 nades so ...
    this is my .scr

    main:

    level.spot[1] = ( 549 -893 17 )
    level.spot[2] = ( -232 -1008 17 )
    level.spot[3] = ( 616 480 49 )
    level.spot[4] = ( 311 1111 49 )
    level.spot[5] = ( -596 335 -15 )
    //*********************************************************************//

    level.grenades[max_spawns] = 10 // max concurrent spawns \\
    level.grenades[spawn_duration] = 30 // how long they stay in seconds \\
    level.grenades[respawn_delay] = 0 // how long till they come back in seconds \\
    level.grenades[axis_model] = "models/weapons/steilhandgranate.tik"
    level.grenades[allies_model] = "models/weapons/m2frag_grenade.tik"

    thread spawn_grenades
    end

    spawn_grenades:
    for (local.i = 1; local.i <= level.grenades[max_spawns]; local.i++)
    thread dm1ammo local.i
    end

    dm1ammo local.num:

    if (local.num > level.spot.size)
    {
    println "*********** removing grenade spawn - not enough spots!"
    end
    }

    while (1)
    {
    local.random = randomint (level.spot.size) + 1

    if (level.spot_used[local.random])
    {
    waitframe // spot already taken - try again \\
    }
    else
    {
    break // free spot found - spawn the grenade \\
    }
    }

    level.spot_used[local.random] = 1

    spawn script_model "targetname" ("steilhandgranate" + local.num)

    local.grenade = $("steilhandgranate" + local.num)
    local.grenade model level.grenades[axis_model]
    local.grenade.origin = level.spot[local.random]
    local.grenade light 0.00 1.50 0.00 50
    local.grenade solid

    spawn trigger_use "targetname" ("ammotrigger" + local.num)

    local.trigger = $("ammotrigger" + local.num)
    local.trigger.origin = local.grenade.origin
    local.trigger setsize ( -20 -20 0 ) ( 20 20 80 )
    local.trigger.grenade = local.grenade
    local.trigger.id = local.num
    local.trigger.spot_index = local.random
    local.trigger setthread gotammo

    //*********************************************************************//

    // wait for the spawn duration //

    for (local.i = 0; local.i <= level.grenades[spawn_duration]; local.i++)
    {
    wait 1

    if (!local.grenade) end // grenade picked up by player, stop here
    }

    // player didn't pick it up, remove and respawn //
    local.grenade delete
    local.trigger delete

    level.spot_used[local.random] = 0

    // do you want them to respawn instantly somewhere else if you haven't picked them up? \\
    wait 1
    // if you want them to respawn here after a delay remove above wait and add below: \\
    //wait level.grenades[respawn_delay]

    thread dm1ammo local.num
    end

    //*********************************************************************//

    gotammo:

    local.trigger = self

    local.num = local.trigger.id
    local.spot_index = local.trigger.spot_index
    local.grenade = local.trigger.grenade

    local.grenade delete
    local.trigger delete

    local.player = parm.other
    local.team = local.player.dmteam

    if ( local.team == "allies" )
    {
    local.player give level.grenades[allies_model]
    }
    else
    {
    local.player give level.grenades[axis_model]
    }

    local.player ammo grenade 1
    local.player iprint "You picked up a grenade"

    level.spot_used[local.spot_index] = 0

    wait level.grenades[respawn_delay]

    thread dm1ammo local.num

    //**************************************************************//

    now ill add this ...
    controlNade:

    local.player = parm.other

    if(local.player.ng > 0)
    {

    local.player iprint "You cant get more than 2 grenades"

    }
    else
    {
    if ( local.player.dmteam == "allies" || local.player.dmteam == "axis" )
    {
    local.player take "models/weapons/m2frag_grenade.tik"
    local.player take "models/weapons/Russian_F1_grenade.tik"
    local.player take "models/weapons/mills_grenade.tik"
    local.player take "models/weapons/steilhandgranate.tik"

    wait 0.25

    if ( local.player.dmteam == "allies" )
    { local.player give "models/weapons/m2frag_grenade.tik" }

    if ( local.player.dmteam == "axis" )
    { local.player give "models/weapons/steilhandgranate.tik" }
    }

    if(local.player.ng == NIL || local.player.ng == 0)
    {
    local.player.ng = 2
    }
    }
    end
    end
    but how to make the players take only 2 nades
    and what i must to add in mike_torso ?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •