Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
560
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 16.88 KB | None | 0 0
  1. zpn = zpn or {}
  2. zpn.f = zpn.f or {}
  3. zpn.config = zpn.config or {}
  4.  
  5. /////////////////////////// Zeros PumpkinNight /////////////////////////////
  6.  
  7. // Developed by ZeroChain:
  8. // http://steamcommunity.com/id/zerochain/
  9. // https://www.gmodstore.com/users/view/76561198013322242
  10.  
  11. // If you wish to contact me:
  12. // clemensproduction@gmail.com
  13.  
  14. /////////////////////////////////////////////////////////////////////////////
  15.  
  16. // Console Commands:
  17. /*
  18.     zpn_ghost_removeall - Remove all Ghosts on the map.
  19.     zpn_data_purge - Removes all the candy points and score data for all players on the server and purges all the save files.
  20.     zpn_cl_draw_antighost - Displays the radius for AntiGhost signs
  21. */
  22.  
  23. // Chat Commands:
  24. /*
  25.     !zpn_save - Saves all the NPC´s, Scoreboards and AntiGhostSign´s on the Map.
  26.     !candy - Tells you your current CandyPoints.
  27.     !dropcandy NUMBER - Drops the defined amount of candy
  28. */
  29.  
  30. // Switches between FastDl and Workshop
  31. zpn.config.FastDl = false
  32.  
  33. // This enables the Debug Mode
  34. zpn.config.Debug = false
  35.  
  36. // The language , en , de , fr , es , ru , pl
  37. zpn.config.SelectedLanguage = "en"
  38.  
  39. // These Ranks are admins, if one of the following scripts is installed then you can ignore this table
  40. // If xAdmin is installed then this table can be ignored
  41. zpn.config.AdminRanks = {
  42.     ["superadmin"] = true,
  43.     ["owner"] = true,
  44. }
  45.  
  46. // Since certain weapons like the stunstick inflict a shit ton of damage to entities we clamp the damage to this value
  47. zpn.config.DamageClamp = {
  48.     ["stunstick"] = 0,
  49. }
  50.  
  51. // Can be smashed and spawns candy
  52. zpn.config.Pumpkin = {
  53.     // How much damage needs to be inflicted in order for the pumpkin to be destroyed.
  54.     Health = {
  55.         min = 5,
  56.         max = 10,
  57.     },
  58.  
  59.     // How much candy entities can a Pumpkin drop?
  60.     Candy = {
  61.         min = 1,
  62.         max = 3,
  63.     },
  64.  
  65.     // How long till the Pumpkin gets removed? -1 will disable the Despawn
  66.     DespawnTime = 100, // seconds
  67.  
  68.     Models = {
  69.         "models/zerochain/props_pumpkinnight/zpn_pumpkin01.mdl",
  70.         "models/zerochain/props_pumpkinnight/zpn_pumpkin02.mdl",
  71.         "models/zerochain/props_pumpkinnight/zpn_pumpkin03.mdl",
  72.         "models/zerochain/props_pumpkinnight/zpn_pumpkin04.mdl",
  73.     }
  74. }
  75.  
  76. // The System for randomly spawning Pumpkins around the map
  77. zpn.config.PumpkinSpawner = {
  78.     // Should we spawn Pumpkins randomly arround the Map?
  79.     Enabled = true,
  80.  
  81.     // How often should we try to spawn a new Pumpkin?
  82.     Interval = 60, // seconds
  83.  
  84.     // Whats the Chance that a pumpkin will spawn?
  85.     Chance = 50, //1-100%
  86.  
  87.     // How many pumpkins are allowed to exist at the same time?
  88.     Count = 15,
  89.  
  90.     // Should we only spawn pumpkins on predefind positions created by the Pumpkin Spawner Toolgun?
  91.     UseCustomSpawns = false,
  92.     /*
  93.         if UseCustomSpawns is set to false then we get the spawn position from Players who are:
  94.             Valid
  95.             Alive
  96.             Not In Vehicle
  97.             On the Ground
  98.             Not near a Anti GhostSign
  99.             Not near another Pumpkin
  100.     */
  101. }
  102.  
  103. // The Pumpkin Boss
  104. zpn.config.PumpkinBoss = {
  105.  
  106.     Notify = {
  107.         // Should we notify all Players on the Server when a Pumpkin Boss spawns or dies?
  108.         Enabled = true,
  109.  
  110.         // The Message we send each player when the Boss spawns
  111.         notify_spawn = "A Pumpkin Boss just appeared!",
  112.  
  113.         // The Message we send each player when the Boss got defeated
  114.         notify_death = "The Pumpkin Boss got defeated!",
  115.     },
  116.  
  117.     // What Music should play while the Boss is alive?
  118.     // This needs to be the path to the music file like inside the sound folder.
  119.     // In order for players to hear the music you need to include it to your FastDL or Workshop contentpack
  120.     // Battle music like this fits very well https://www.youtube.com/watch?v=4XNCS-VqP8U
  121.     MusicPath = nil, // "path/to/the/file.mp3"
  122.  
  123.     // How much damage needs to be inflicted in order for the pumpkinmonster to be killed.
  124.     Health = 1000,
  125.  
  126.     // How much damage needs to be inflicted in order to stop the Boss from healing
  127.     HealShield = 100,
  128.  
  129.     // How long afer the Boss has healed can he heal himself again
  130.     HealCooldown = 60, // seconds
  131.  
  132.     // Should the Boss spawn with a Tornado Effect?
  133.     LeafTornado = true,
  134.  
  135.     // Should we shine a spotlight on the Boss for better lightning?
  136.     Spotlight = true,
  137.  
  138.     // The Distance at which the player causes more damage to the Boss
  139.     // Being to far away will decrease the inflicted damage by 90%
  140.     AttackDistance = 1500,
  141.  
  142.     // How long should the npc be idle/NotAttacking before he starts his next attack
  143.     NoAttack = {
  144.         time_min = 2,
  145.         time_max = 5
  146.     },
  147.  
  148.     // Close Range attacks include the aimed Smash at close Players or the Circular Smash
  149.     CloseRangeAttack = {
  150.         // How much damage do the CloseRange attacks inflict on the Players?
  151.         Damage = 50,
  152.  
  153.         // Close Range Cooldown in seconds
  154.         Cooldown = 10
  155.     },
  156.  
  157.     // Far Range attacks include the Meteor and PumpkinBomb attacks
  158.     FarRangeAttack = {
  159.         // Far Range Cooldown in seconds
  160.         Cooldown = 5
  161.     },
  162.  
  163.     // The FireRain Attack shoots Meteors from the sky and at players
  164.     FireRain = {
  165.         // How many meteors should shoot at random positions arrond the boss
  166.         Count = 3,
  167.  
  168.         // Should we spawn some extra meteors aiming at the players?
  169.         AimedMeteors = true,
  170.  
  171.         // Should the meteors create firepits on impact?
  172.         FirepitOnDeath = true,
  173.  
  174.         // How long should the firepit exist?
  175.         Firepit_Duration = 5,
  176.     },
  177.  
  178.     // The Pumpkinbomb attack shoots bombs at the Player
  179.     PumpkinBombs = {
  180.         // How many Pumpkin Bombs should be spawned per PumpkinBomb Attack?
  181.         Count = 3,
  182.  
  183.         // How much damage does a PumpkinBomb inflict on the Player?
  184.         Damage = 5,
  185.  
  186.         // How long till the bombs explode?
  187.         ExploDelay = 4,
  188.     },
  189.  
  190.     // The Minion attack summons Pumpkin monsters
  191.     Minions = {
  192.  
  193.         // How often can the Boss spawn minions?
  194.         Interval = 20, //seconds
  195.  
  196.         // How many Pumpkin Minions can the boss have?
  197.         Count = 3,
  198.  
  199.         // How much damage needs to be inflicted in order for the pumpkinmonster to be killed.
  200.         Health = 100,
  201.  
  202.         Shoot = {
  203.             // How much damage does the minion inflict on the player?
  204.             Damage = 5,
  205.  
  206.             // How often can the minion shoot a fireball?
  207.             Interval = 3
  208.         },
  209.  
  210.         // Should the minions circle arround the boss? This does impact the performance because of physics.
  211.         CircleBoss = false,
  212.  
  213.         // How many candy entities should the Monster drop on death?
  214.         CandyDropOnDeath = {
  215.             max = 3,
  216.             min = 1,
  217.         },
  218.  
  219.         // What models should the Minions use?
  220.         Models = {
  221.             "models/zerochain/props_pumpkinnight/zpn_minion_pumpkin01.mdl",
  222.             "models/zerochain/props_pumpkinnight/zpn_minion_pumpkin02.mdl",
  223.             "models/zerochain/props_pumpkinnight/zpn_minion_pumpkin03.mdl",
  224.             "models/zerochain/props_pumpkinnight/zpn_minion_pumpkin04.mdl",
  225.         }
  226.     },
  227.  
  228.     // Should we spawn a little firework once the boss is defeated?
  229.     FireworkOnDeath = true,
  230.  
  231.     // What loot should the pumpkin boss drop on death?
  232.     Loot = {
  233.         ["zpn_pumpkin"] = 5,
  234.         ["zpn_candy"] = 10,
  235.         ["zpn_partypopper"] = 3,
  236.     }
  237. }
  238.  
  239. zpn.config.Candy = {
  240.  
  241.     // What models should the candy use and how much candy does it give?
  242.     Candytypes = {
  243.         ["models/zerochain/props_pumpkinnight/zpn_candy_corn.mdl"] = 3,
  244.         ["models/zerochain/props_pumpkinnight/zpn_candy_lolipop.mdl"] = 10,
  245.         ["models/zerochain/props_pumpkinnight/zpn_candy_puff.mdl"] = 5,
  246.         ["models/zerochain/props_pumpkinnight/zpn_candy_pumpkin.mdl"] = 7,
  247.         ["models/zerochain/props_pumpkinnight/zpn_candy_bonbon.mdl"] = 5,
  248.         ["models/zerochain/props_pumpkinnight/zpn_candy_skull.mdl"] = 7,
  249.         ["models/zerochain/props_pumpkinnight/zpn_candy_smartie.mdl"] = 2,
  250.         ["models/zerochain/props_pumpkinnight/zpn_candy_snake.mdl"] = 4,
  251.         ["models/zerochain/props_pumpkinnight/zpn_candy_coco.mdl"] = 6,
  252.         ["models/zerochain/props_pumpkinnight/zpn_candy_spiral02.mdl"] = 7,
  253.         ["models/zerochain/props_pumpkinnight/zpn_candy_string.mdl"] = 4,
  254.         ["models/zerochain/props_pumpkinnight/zpn_candy_fruit.mdl"] = 6,
  255.     },
  256.  
  257.     // How long does it take for the Candy to despawn? -1 will disable the Despawn
  258.     DespawnTime = 60, // seconds
  259. }
  260.  
  261. zpn.config.Data = {
  262.     // Should the CandyPoints and SmashedPumpkin Count be saved on the server?
  263.     Save = true,
  264.  
  265.     // How often should we auto save the data of players. Set to -1 to disable the autosave.
  266.     // The data will also get saved when the player disconnects from the Server so the autosave is just a safety measure.
  267.     Save_Interval = 120,
  268.  
  269.     // If specified then only data for Players with these Ranks get saved. Leave empty to save the data for every player.
  270.     Whitelist = {
  271.         //["superadmin"] = true
  272.     }
  273. }
  274.  
  275. zpn.config.Scoreboard = {
  276.     // How often should we update the scoreboard if the score has changed?
  277.     UpdateInterval = 10, // seconds
  278.  
  279.     // Players with these ranks will not be displayed on the scoreboard
  280.     RankBlackList = {
  281.         ["owner"] = true,
  282.     }
  283. }
  284.  
  285. // The Ghost sometimes appears and steals candy from pumpkins and players
  286. zpn.config.Ghost = {
  287.     // How much damage needs to be inflicted in order for the Ghost to be killed.
  288.     Health = 500,
  289.  
  290.     // How much Health should the Ghost gain/recover on successfully stealing candy or smashing a pumpkin?
  291.     Health_OnSuccess = 0.1, // 10%
  292.  
  293.     // This position will be used when the ghost is hiding
  294.     HidingPos = Vector(0,0,0),
  295.  
  296.     // How much candy can the ghost steal from the Player
  297.     Steal = {
  298.         max = 10,
  299.         min = 5
  300.     },
  301.  
  302.     // How often should the ghost try to steal candy or smash a pumpkin
  303.     Action_Interval = 60, // seconds,
  304.  
  305.     // How long should the Ghost be paralized when damaged before hiding again?
  306.     ParalizeTime = 3,
  307.  
  308.     // How long has the ghost to wait before he can attack each player again?
  309.     PlayerAttack_Cooldown = 300, // seconds
  310.  
  311.     // The ghost wont steal candy from players with these ranks
  312.     BlackList = {
  313.         ["superadmin"] = true,
  314.     },
  315.  
  316.     // Should we spawn another Ghost everytime a Ghost dies?
  317.     Rebirth = false,
  318. }
  319.  
  320. // The Anti Ghost sign prevents the Ghost stealing candy from Players near the sign.
  321. // It also prevents pumpkins spawning near it.
  322. // Its usally used in areas like the Player Spawn
  323. zpn.config.AntiGhostSign = {
  324.     // How close does the player needs to be near the sign to be save from the Ghosts?
  325.     Distance = 500
  326. }
  327.  
  328. // The PartyPopper Swep can be bought by the Shop NPC
  329. // There is a non lethal version which shoots confetty and a lethal version which shoots a projectile.
  330. zpn.config.PartyPopper = {
  331.  
  332.     // How much damage does the Projectile of the PumpkinSlayer inflict upon explosion?
  333.     Damage = {
  334.         // Destroy them bombs
  335.         ["zpn_pumpkin_bomb"] = 10000,
  336.  
  337.         // Insta kill the Pumpkins
  338.         ["zpn_pumpkin"] = 10000,
  339.  
  340.         // Inflict a lot of damage against the Ghost
  341.         ["zpn_ghost"] = 300,
  342.  
  343.         // Inflict some damage against the Minion
  344.         ["zpn_pumpkin_minion"] = 100,
  345.  
  346.         // Do some damage against the Boss
  347.         ["zpn_pumpkin_boss"] = 200,
  348.     }
  349. }
  350.  
  351. zpn.config.NPC = {
  352.     // Name of the NPC
  353.     Name = "Señor Calabaza",
  354.  
  355.     // Setting this to false will improve network performance but disables the npc reactions for the player
  356.     Capabilities = true,
  357.  
  358.     // Model of the NPC
  359.     Model = "models/zerochain/props_pumpkinnight/zpn_shopnpc.mdl",
  360. }
  361.  
  362. /*
  363.     //////////////////////
  364.     //Shop Item Exambles//
  365.     //////////////////////
  366.  
  367.  
  368.     SH Accessory HatID https://www.gmodstore.com/market/view/3781
  369.     [x] = {
  370.         type = 5,
  371.         class = "pumpkinhat",
  372.         name = "Pumpkin Hat",
  373.         desc = "A nice hat!",
  374.         model = "models/props/pumpkin_z.mdl",
  375.         icon = nil,
  376.         price = 25,
  377.         amount = 1
  378.     },
  379.  
  380.     Pointshop01 Points https://github.com/adamdburton/pointshop
  381.     [x] = {
  382.         type = 6,
  383.         class = nil,
  384.         name = "PS1 Points",
  385.         desc = "Some Pointshop points!",
  386.         model = nil,
  387.         icon = Material("materials/zerochain/zpn/ui/zpn_p01_icon.png", "smooth"),
  388.         price = 10,
  389.         amount = 5
  390.     },
  391.  
  392.     Pointshop02 StandardPoints https://github.com/Kamshak/Pointshop2
  393.     [x] = {
  394.         type = 7,
  395.         class = nil,
  396.         name = "PS2 StandardPoints",
  397.         desc = "Some Pointshop2 points!",
  398.         model = nil,
  399.         icon = Material("materials/zerochain/zpn/ui/zpn_p02_icon.png", "smooth"),
  400.         price = 10,
  401.         amount = 5
  402.     },
  403.  
  404.     Pointshop02 PremiumPoints https://github.com/Kamshak/Pointshop2
  405.     [x] = {
  406.         type = 8,
  407.         class = nil,
  408.         name = "PS2 PremiumPoints",
  409.         desc = "Some Pointshop2 PremiumPoints!",
  410.         model = nil,
  411.         icon = Material("materials/zerochain/zpn/ui/zpn_p02+_icon.png", "smooth"),
  412.         price = 50,
  413.         amount = 5
  414.     },
  415.  
  416.     //////////////////////
  417.     //////////////////////
  418. */
  419.  
  420. zpn.config.Shop = {
  421.  
  422.     [1] = {
  423.  
  424.         /*
  425.             1 = Entity
  426.             2 = Weapon
  427.             3 = Health
  428.             4 = Armor
  429.             5 = SH Accessory HatID https://www.gmodstore.com/market/view/3781
  430.             6 = Pointshop01 Points https://github.com/adamdburton/pointshop
  431.             7 = Pointshop02 StandardPoints https://github.com/Kamshak/Pointshop2
  432.             8 = Pointshop02 PremiumPoints https://github.com/Kamshak/Pointshop2
  433.         */
  434.  
  435.         // What kind of item is this?
  436.         type = 1,
  437.  
  438.         // The Entity / Weapon Class or HatID
  439.         class = "item_ammo_pistol",
  440.  
  441.         // The Item name
  442.         name = "Pistol Ammo",
  443.  
  444.         // Some info about this item
  445.         desc = "Holds some pistol ammo!",
  446.  
  447.         // The path to Model
  448.         model = "models/Items/BoxSRounds.mdl",
  449.  
  450.         // The Field of view for displaying the model (Usefull if the model is very small)
  451.         model_fov = 25,
  452.  
  453.         // The Skin for the Model
  454.         model_skin = 0,
  455.  
  456.         // The path to the png icon, set to nil to use the model instead
  457.         icon = nil,
  458.  
  459.         // The Price
  460.         price = 15,
  461.  
  462.         // How much should we give the player? (Used for stuff like Health, Armor, Points)
  463.         amount = 1,
  464.  
  465.         // What color should the item have in the shop?
  466.         color = Color(39,32,65),
  467.  
  468.         // What ranks are allowed to buy this item? Leave empty to allowe everyone to buy it.
  469.         ranks = {}
  470.     },
  471.     [2] = {
  472.         type = 3,
  473.         class = nil,
  474.         name = "Health",
  475.         desc = "+25 Health.",
  476.         model = nil,
  477.         model_skin = nil,
  478.         model_fov = nil,
  479.         icon = Material("materials/zerochain/zpn/ui/zpn_health_icon.png", "smooth"),
  480.         price = 50,
  481.         amount = 25,
  482.         color = Color(39,32,65),
  483.         ranks = {},
  484.     },
  485.     [3] = {
  486.         type = 4,
  487.         class = nil,
  488.         name = "Armor",
  489.         desc = "+25 Armor.",
  490.         model = nil,
  491.         model_skin = nil,
  492.         model_fov = nil,
  493.         icon = Material("materials/zerochain/zpn/ui/zpn_armor_icon.png", "smooth"),
  494.         price = 50,
  495.         amount = 25,
  496.         color = Color(39,32,65),
  497.         ranks = {},
  498.     },
  499.     [4] = {
  500.         type = 2,
  501.         class = "weapon_ak472",
  502.         name = "AK 47",
  503.         desc = "Awesome gun!",
  504.         model = "models/weapons/w_rif_ak47.mdl",
  505.         model_skin = 0,
  506.         model_fov = 25,
  507.         icon = nil,
  508.         price = 100,
  509.         amount = 1,
  510.         color = Color(39,32,65),
  511.         ranks = {
  512.             ["superadmin"] = true,
  513.             ["VIP"] = true,
  514.         },
  515.     },
  516.     [5] = {
  517.         type = 2,
  518.         class = "zpn_partypopper",
  519.         name = "Pumpkin Popper",
  520.         desc = "Perfect for celebrating Halloween!",
  521.         model = "models/zerochain/props_pumpkinnight/zpn_partypopper.mdl",
  522.         model_skin = 0,
  523.         model_fov = 13,
  524.         icon = nil,
  525.         price = 50,
  526.         amount = 1,
  527.         color = Color(39,32,65),
  528.         ranks = {
  529.             ["superadmin"] = true,
  530.             ["VIP"] = true,
  531.         },
  532.     },
  533.     [6] = {
  534.         type = 2,
  535.         class = "zpn_partypopper01",
  536.         name = "Pumpkin Slayer",
  537.         desc = "A powerfull weapon against pumpkins!",
  538.         model = "models/zerochain/props_pumpkinnight/zpn_partypopper.mdl",
  539.         model_skin = 1,
  540.         model_fov = 13,
  541.         icon = nil,
  542.         price = 200,
  543.         amount = 1,
  544.         color = Color(39,32,65),
  545.         ranks = {
  546.             ["superadmin"] = true,
  547.             ["VIP"] = true,
  548.         },
  549.     },
  550. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement