Author Topic: DanMister[Heavy Soldier] (python)  (Read 279 times)

Offline DanMister

  • Level 7 Expert
  • *****
  • Posts: 196
  • no autographs, please.
DanMister[Heavy Soldier] (python)
« on: November 28, 2009, 11:31:32 PM »
New Race 'Heavy Soldier' Enjoy!

Code: (python) [Select]
############################
#   IMPORT
import es
import gamethread
import playerlib
import random

import wcs

############################
#   PUBLISH INFO
info = es.AddonInfo()
info.name = 'Heavy Soldier'
info.author = 'DanMister'

############################
#   RACE INFO

RaceName = 'Heavy Soldier'
race = wcs.Race(RaceName)
race.registerWeaponRestriction('allow only',['knife','deagle','m429'])

############################
#   SKILL INFO

race.registerSkill('Heavy Weapon',1,5,'Gain your heavy weapon, the M429,with extra ammo')
race.registerSkill('Heavy Health',1,6,'Recieve the health and armor a heavy should have')
race.registerSkill('Heavy Hits'1,5,'Do the damage a heavy should do')
race.registerSkill('Plan B'1,6,'Explode, resulting in area damage, and taking away enemy ammo')
race.registerSkill('Heavy Force'1,5,'Push enemy back and take a percentage of their ammo for your own')

#############################
#   CODE/PT.1 PLAYER_SPAWN


def player_spawn(ev):
    userid = ev['userid']
    effect = wcs.effect()
    player = playerlib.getPlayer(userid)
    Weapon = wcs.GetLevel(userid, RaceName, 'Heavy Weapon')
    Health = wcs.GetLevel(userid, RaceName, 'Heavy Health')
    player.setSpeed(.75)

    if Weapon > 3 and not Weapon == 0:
        es.server.queuecmd('est_Give %s weapon_m429' % (userid))
        wcs.effect().Misc3(userid, 5, 1)
        player.setPrimaryAmmo(125)
        player.setPrimaryClip(125)

    if Weapon = 3:
        es.server.queuecmd('est_Give %s weapon_m429' % (userid))
        wcs.effect().Misc3(userid, 5, 2)
        player.setPrimaryAmmo(150)
        player.setPrimaryClip(150)

    if Weapon > 3:
        es.server.queuecmd('est_Give %s weapon_m429' % (userid))
        wcs.effect()Misc3(userid, 5, 3)
        player.setPrimaryAmmo(175)
        player.setPrimaryClip(175)

        if Health < 3 and not Health == 0:
            player.setHealth(150)
            player.setArmor(100)

        if Health = 3:
            player.setHealth(225)
            player.setArmor(125)

        if Health > 3:
            player.setHealth(300)
            player.setArmor(150)


##############################
#   CODE/PT.2 PLAYER_HURT


def player_hurt(ev):
    userid = ev['userid']
    attacker = ev['attacker']
    effect = wcs.effect()
    player = playerlib.getPlayer(userid)
    player2 = playerlib.getPlayer(attacker)
    player1 = wcs.Command(userid)
    H-Hits = wcs.GetLevel(userid, RaceName, 'Heavy Hits')
    H-Force = wcs.GetLevel(userid, RaceName, 'Heavy Force')
    chance = random.randint(1,20)
    chance1 = random.randint(1,40)

    if H-Hits < 3 and not H-Hits == 0 and H-Hits >= chance:
        player1.Damage(2, 2, (attacker))
        effect.Beam1((attacker), (userid), 5, 0, 100, 100, 0)

    if H-Hits = 3 and H-Hits >= chance:
        player1.Damage(3, 2, (attacker))
        effect.Beam1((attacker), (userid), 5, 0, 100, 100, 0)

    if H-Hits > 3 H-Hits >= chance:
        player1.Damage(4, 2, (attacker))
        effect.Beam1((attacker), (userid), 5, 0, 100, 100, 0)

        if H-Force < 3 and not H-Force == 0 and H-Force >= chance1:
            wcs.Command(userid).Push(25, 25, 25)
            player2.setPrimaryAmmo(player.getAmmo(player.getPrimary())*1/8)
            wcs.Command((userid).Drop()

        if H-Force = 3 and H-Force >= chance1:
            wcs.Command(userid).Push(30, 30, 30)
            player2.setPrimaryAmmo(player.getAmmo(player.getPrimary())*1/7)

        if H-Force > 3 and H-Force >= chance1:
            wcs.Command(userid).Push(35, 35, 35)
            player2.setPrimaryAmmo(player.getAmmo(player.getPrimary())*1/6)


###############################
#   CODE/PT.3 PLAYER_DEATH


def player_death(ev):
    player3 = wcs.Command(ev['attacker'])
    Plan-B = wcs.GetLevel(userid, RaceName, 'Plan B')
    userid = ev['userid']
    player = playerlib.getPlayer(userid)
    player4 = playerlib.getPlayer(attacker)
    player5 = playerlib.getPlayer(player.getNearPlayers(150))
    player6 = playberlib.getPlayer(player.getNearPlayers(175))
    player7 = playerlib.getPlayer(player.getNearPlayers(200))
    if Plan-B < 3 and not Plan-B == 0:
        if ['es_userteam'] == '2':
            team = 'c'
        else:
            team = 't'
    player5.setAmmo(player5.getPrimary(), (player5.getAmmo(player5.getPrimary())*2/3))
    player.AreaDamage(team, 150, 50)

    if Plan-B = 3:
        if ['es_userteam'] == '2':
            team = 'c'
        else:
            team = 't'
    player6.setAmmo(player6.getPrimary(), (player6.getAmmo(player6.getPrimary())*1/2))
    player.AreaDamage(team, 175, 60)

    if Plan-B > 3:
        if ['es_userteam'] == '2':
            team = 'c'
        else:
            team = 't'
        player7.setAmmo(player7.getPrimary(), (player7.getAmmo(player7.getPrimary())*1/3))
        player.AreaDamage(team, 200, 75)

################################
#   CODE END. RACE COMPLETE! :D
   
   
   
                       
           
           
           
           
           
           
       
       
           
       
   
   




« Last Edit: November 29, 2009, 05:00:12 AM by DanMister »
Quote

Quote
"Genius may have its limitations, but stupidity is not thus handicapped."   Elbert Hubbard

Offline Maxxi

  • Level 7 Expert
  • *****
  • Posts: 1486
Re: DanMister[Heavy Soldier] (python)
« Reply #1 on: November 29, 2009, 01:18:23 AM »
check your last race.registerSkill :P

Zawmbee

  • Guest
Re: DanMister[Heavy Soldier] (python)
« Reply #2 on: November 29, 2009, 01:22:45 AM »
Yeah, that does kind of suck since it is case sensitive...

Offline DanMister

  • Level 7 Expert
  • *****
  • Posts: 196
  • no autographs, please.
Re: DanMister[Heavy Soldier] (python)
« Reply #3 on: November 29, 2009, 04:58:37 AM »
arg!! i hate that! ... fixed
Quote

Quote
"Genius may have its limitations, but stupidity is not thus handicapped."   Elbert Hubbard