[E2] DamageCore
Добавить в игру через Steam
Нажмите «Подписаться»
На странице Steam войдите в аккаунт, если потребуется.
Подписаться
О материале
«[E2] DamageCore» — материал мастерской Garry’s Mod. Аддоны, карты, персонажи и инструменты для песочницы. Данные Steam, описание автора и ссылка для установки через подписку. Совместимость редакцией не проверена.
Описание автора
For more information, go to the GitHub Page
DamageCore
DamageCore is an extension module for the Wire Expression 2 Chip. It enables players to detect and/or deal damage to other entities.
Workshop Installation
The DamageCore is available on the Steam Workshop! Go to the DamageCore Workshop Page and press
Subscribe
. For can go to the Expression 2 Core Collection for more extensions.
Manual Installation
Clone this repository into your
steamapps\common\GarrysMod\garrysmod\addons
folder using this command if you are using git:
git clone https://github.com/sirpapate/damagecore.git
Documentation
Events
| Declaration | Replacing | Description |
|---|---|---|
| event damage(Victim:entity, Damage:damage) | runOnDmg, dmgClk, lastDamage, lastDamageVictim | Triggered when an entity takes damage. |
| event trackedDamage(Victim:entity, Damage:damage) | Triggered when an entity in the list of tracked (with "E:trackDamage()") entities takes damage. | |
| event playerDamage(Victim:entity, Damage:damage) | Triggered when a player takes damage. |
Tick Functions
| Function | Return | Description |
|---|---|---|
| runOnDmg(N) | If set to 1, E2 will run when an entity takes damage. | |
| runOnDmg(N,E) | If set to 1, E2 will run when specified entity takes damage. | |
| runOnDmg(N,R) | If set to 1, E2 will run when specified entities take damage. | |
| E:trackDamage() | E2 will run when the specified entity takes damage. | |
| T:trackDamage() | E2 will run when the specified entities take damage. | |
| E:stopTrackDamage() | E2 will no longer run when the specified entity takes damage. | |
| R:stopTrackDamage() | E2 will no longer run when the specified entities take damage. | |
| getDamageTrackedEntities() | R | Returns a array of all tracked entities. |
| E:isDamageTracked() | N | Returns 1 if the entity is tracked. Returns 0 otherwise. |
| dmgClk() | N | Returns 1 if the chip is being executed because of a damage event. Returns 0 otherwise. |
| lastDamage() | XDM | Returns the last damage. |
| lastDamageVictim() | E | Returns the victim of the last damage. |
Damage Type
| Function | Return | Description |
|---|---|---|
| damage() | XDM | Makes an empty damage. |
| XDM:clone() | XDM | Returns a copy of the damage. |
| XDM:toTable() | T | Converts the damage into a table. |
| XDM:getDamage() | N | Returns the damage amount. |
| XDM:getAttacker() | E | Returns the attacker of damage. |
| XDM:getForce() | V | Returns a vector representing the damage force. |
| XDM:getPosition() | V | Returns the position where the damage was or is going to be applied to. |
| XDM:getType() | N | Returns a bitflag which indicates the damage type of the damage. |
| XDM:getInflictor() | E | Returns the inflictor of the damage. This is not necessarily a weapon. |
| XDM:isBulletDamage() | N | Returns 1 if the damage was caused by a bullet. |
| XDM:isExplosionDamage() | N | Returns 1 if the damage contains explosion damage. |
| XDM:isFallDamage() | N | Returns 1 if the damage contains fall damage. |
| XDM:setDamage(N) | XDM | Sets the amount of damage. Returns itself. |
| XDM:setAttacker(E) | XDM | Sets the attacker of the damage. Returns itself. |
| XDM:setForce(V) | XDM | Sets the directional force of the damage. Returns itself. |
| XDM:setPosition(V) | XDM | Sets the position of where the damage gets applied to. Returns itself. |
| XDM:setType(N) | XDM | Sets the damage type. Returns itself. |
| XDM:setInflictor(E) | XDM | Sets the inflictor of the damage for example a weapon. Returns itself. |
Applying Damage Functions
| Function | Return | Description |
|---|---|---|
| canDamage(E) | N | Returns 1 if the entity can be damaged by the player. |
| E:takeDamage(XDM) | Applies the damage specified by the damage info to the entity. | |
| E:takeDamage(N,E) | Applies the specified amount of damage to the entity. (Damage Amount) | |
| E:takeDamage(N,E) | Applies the specified amount of damage to the entity. (Damage Amount, Attacker) | |
| E:takeDamage(N,E,E) | Applies the specified amount of damage to the entity. (Damage Amount, Attacker, Inflictor) | |
| blastDamage(XDM,V,N) | Applies spherical damage based on damage info to all entities in the specified radius. (Damage, Position, Radius) | |
| blastDamage(E,E,V,N,N) | Applies explosion damage to all entities in the specified radius. (Attacker, Inflictor, Position, Radius, Damage Amount) |
Как установить и запустить
Откройте оригинальную страницу в Steam Workshop, проверьте версию игры, зависимости и порядок загрузки в описании автора. Нажмите «Подписаться» и дождитесь загрузки Steam. Включите материал в меню модификаций или контента игры, если это требуется. Совместимость и запуск редакцией не проверены.