language.Add("Undone_e2_spawned_prop", "Undone E2 Spawned Prop")
language.Add("Undone_e2_spawned_seat", "Undone E2 Spawned Seat")
language.Add("Undone_e2_spawned_sent", "Undone E2 Spawned SENT")
E2Helper.Descriptions["propManipulate(e:vannn)"] = "Allows to do any single prop core function in one term (position, rotation, freeze, gravity, notsolid)"
E2Helper.Descriptions["e:propIsDupeable()"] = "Returns 1, if the prop can be duplicated with the duplicator/advdupe2/similar tool, 0 otherwise."
E2Helper.Descriptions["e:propCanSetDupeable()"] = "Returns 1, if you can change entity dupeable state, 0 otherwise. (If you can make it either dupeable or non-dupeable)"
E2Helper.Descriptions["e:propNoDupe(n)"] = "Set to 1 to prevent the prop from being duplicated with the duplicator/advdupe2 tool. Set to 0 to allow duplication. (You will not be able to make already non-dupeable prop as dupeable)"
E2Helper.Descriptions["propSpawn(sn)"] = "Use the model string or a template entity to spawn a prop. You can set the position and/or the rotation as well. The last number indicates frozen/unfrozen."
E2Helper.Descriptions["propSpawn(en)"] = "Entity template, Frozen Spawns a prop with the model of the template entity. If frozen is 0, then it will spawn unfrozen."
E2Helper.Descriptions["propSpawn(svn)"] = "Model path, Position, Frozen Spawns a prop with the model denoted by the string filepath at the position denoted by the vector. If frozen is 0, then it will spawn unfrozen."
E2Helper.Descriptions["propSpawn(evn)"] = "Entity template, Position, Frozen Spawns a prop with the model of the template entity at the position denoted by the vector. If frozen is 0, then it will spawn unfrozen."
E2Helper.Descriptions["propSpawn(san)"] = "Model path, Rotation, Frozen Spawns a prop with the model denoted by the string filepath and rotated to the angle given. If frozen is 0, then it will spawn unfrozen."
E2Helper.Descriptions["propSpawn(ean)"] = "Rotation, Frozen Spawns a prop with the model of the template entity and rotated to the angle given. If frozen is 0, then it will spawn unfrozen."
E2Helper.Descriptions["propSpawn(svan)"] = "Model path, Position, Rotation, Frozen Spawns a prop with the model denoted by the string file path, at the position denoted by the vector, and rotated to the angle given. If frozen is 0, then it will spawn unfrozen."
E2Helper.Descriptions["propSpawn(evan)"] = "Position, Rotation, Frozen Spawns a prop with the model of the template entity, at the position denoted by the vector, and rotated to the angle given. If frozen is 0, then it will spawn unfrozen."
E2Helper.Descriptions["sentSpawn(s)"] = "Sent class - Spawns a SENT with no parameters. (Attempts to default the required values). (Requires wire_expression2_propcore_sents_whitelist 0 to spawn sents from entity tab!)"
E2Helper.Descriptions["sentSpawn(sv)"] = "Sent class, Position - Spawns a SENT with no parameters. (Attempts to default the required values). (Requires wire_expression2_propcore_sents_whitelist 0 to spawn sents from entity tab!)"
E2Helper.Descriptions["sentSpawn(st)"] = "Sent class, Sent data - Spawns a SENT with provided data as parameters. (Requires wire_expression2_propcore_sents_whitelist 0 to spawn sents from entity tab!)"
E2Helper.Descriptions["sentSpawn(sva)"] = "Sent class, Position, Rotation - Spawns a SENT with no parameters. (Attempts to default the required values). (Requires wire_expression2_propcore_sents_whitelist 0 to spawn sents from entity tab!)"
E2Helper.Descriptions["sentSpawn(svat)"] = "Sent class, Position, Rotation, Sent data - Spawns a SENT with provided data as parameters. (Requires wire_expression2_propcore_sents_whitelist 0 to spawn sents from entity tab!)"
E2Helper.Descriptions["sentSpawn(svan)"] = "Sent class, Position, Rotation, Frozen - Spawns a SENT with no parameters. (Attempts to default the required values). (Requires wire_expression2_propcore_sents_whitelist 0 to spawn sents from entity tab!)"
E2Helper.Descriptions["sentSpawn(svant)"] = "Sent class, Position, Rotation, Frozen, Sent data - Spawns a SENT with provided data as parameters. (Requires wire_expression2_propcore_sents_whitelist 0 to spawn sents from entity tab!)"
E2Helper.Descriptions["sentGetWhitelisted()"] = "Returns an array of classes, which is registered to the whitelist (can be spawned regardless of wire_expression2_propcore_sents_whitelist). (Can be used to make a lookup table)"
E2Helper.Descriptions["sentGetData(s)"] = "Returns a table, where keys are parameter names (key sensitive!) and values as a table, where 'type' is a value type, 'default_value' is the default value that will be used, if none provided, and 'description' is a description of the parameter."
E2Helper.Descriptions["sentGetData(ss)"] = "Returns a table, where 'type' is a value type, 'default_value' is the default value that will be used, if none provided, and 'description' is a description of the parameter."
E2Helper.Descriptions["sentGetDataTypes(s)"] = "Returns a table, where keys are parameter names (key sensitive!) and values is (lua-)types."
E2Helper.Descriptions["sentGetDataType(ss)"] = "Returns parameters's (lua-)type of the parameter."
E2Helper.Descriptions["sentGetDataDefaultValues(s)"] = "Returns a table, where keys are parameter names (key sensitive!) and values is default values, which will be applied if none would be provided."
E2Helper.Descriptions["sentGetDataDefaultValues(ss)"] = "Returns parameters's default parameter (that will be used, if none provided)."
E2Helper.Descriptions["sentGetDataDescriptions(s)"] = "Returns a table, where keys are parameter names (key sensitive!) and values is descriptions of the parameter."
E2Helper.Descriptions["sentGetDataDescriptions(ss)"] = "Returns parameters's description."
E2Helper.Descriptions["sentCanCreate()"] = "Returns 1 if you can spawn a SENT, 0 otherwise. (Complete alias of propCanCreate())"
E2Helper.Descriptions["sentCanCreate(s)"] = "Returns 1 if you can spawn a provided class(type) SENT, 0 otherwise. (Accounts both for antispam and whitelist)"
E2Helper.Descriptions["sentIsWhitelist()"] = "Returns 1 if the whitelist is enabled, 0 otherwise."
E2Helper.Descriptions["sentIsEnabled()"] = "Returns 1 if server allows spawning sents, 0 otherwise."
E2Helper.Descriptions["seatSpawn(sn)"] = "Model path, Frozen Spawns a prop with the model denoted by the string filepath. If frozen is 0, then it will spawn unfrozen."
E2Helper.Descriptions["seatSpawn(svan)"] = E2Helper.Descriptions["seatSpawn(sn)"]
E2Helper.Descriptions["seatSpawn(svans)"] = E2Helper.Descriptions["seatSpawn(sn)"] .. " String seatType, determines what animations the seat will have. For example phx_seat2 and phx_seat3 will have Jeep and Airboat animations."
E2Helper.Descriptions["propSpawnEffect(n)"] = "Set to 1 to enable prop spawn effect, 0 to disable."
E2Helper.Descriptions["propDelete(e:)"] = "Deletes the specified prop."
E2Helper.Descriptions["propDelete(t:)"] = "Deletes all the props in the given table, returns the amount of props deleted."
E2Helper.Descriptions["propDelete(r:)"] = "Deletes all the props in the given array, returns the amount of props deleted."
E2Helper.Descriptions["propMakeBreakable(e:n)"] = "Pass 0 to make it non-breakable, any other value to make it breakable. You can't make breakable props out of natively-unbreakable props."
E2Helper.Descriptions["propIsBreakable(e:)"] = "Returns 1, if the prop is breakable (including if prop has been previously marked as non-breakable by e:propMakeBreakable(n)), 0 otherwise."
E2Helper.Descriptions["propFreeze(e:n)"] = "Passing 0 unfreezes the entity, everything else freezes it."
E2Helper.Descriptions["propNotSolid(e:n)"] = "Passing 0 makes the entity solid, everything else makes it non-solid."
E2Helper.Descriptions["propGravity(e:n)"] = "Passing 0 makes the entity weightless, everything else makes it weighty."
E2Helper.Descriptions["propMakePersistent(e:n)"] = "Setting to 1 will make the prop persistent."
E2Helper.Descriptions["propPhysicalMaterial(e:s)"] = "Changes the surface material of a prop (eg. wood, metal, ... See Material_surface_properties )."
E2Helper.Descriptions["propPhysicalMaterial(e:)"] = "Returns the surface material of a prop."
E2Helper.Descriptions["setPos(e:v)"] = "Sets the position of an entity."
E2Helper.Descriptions["setLocalPos(e:v)"] = "Sets the position of an entity local to its parent."
E2Helper.Descriptions["reposition(e:v)"] = "Deprecated. Kept for backwards-compatibility."
E2Helper.Descriptions["setAng(e:a)"] = "Set the rotation of an entity."
E2Helper.Descriptions["setLocalAng(e:a)"] = "Set the rotation of an entity local to its parent."
E2Helper.Descriptions["rerotate(e:a)"] = "Deprecated. Kept for backwards-compatibility."
E2Helper.Descriptions["parentTo(e:e)"] = "Parents one entity to another."
E2Helper.Descriptions["parentTo(e:)"] = E2Helper.Descriptions["parentTo(e:e)"]
E2Helper.Descriptions["parentToAttachment(e:es)"] = "Parents one entity to anothers attachment."
E2Helper.Descriptions["deparent(e:)"] = "Unparents an entity, so it moves freely again."
E2Helper.Descriptions["propBreak(e:)"] = "Breaks/Explodes breakable/explodable props (Useful for Mines)."
E2Helper.Descriptions["propDissolve(e:)"] = "Dissolves the specified entity."
E2Helper.Descriptions["propDissolve(e:n)"] = "Dissolves the specified entity using the given dissolve type (_ENTITY_DISSOLVE)."
E2Helper.Descriptions["propDissolve(e:nn)"] = "Dissolves the specified entity with the given dissolve type (_ENTITY_DISSOLVE) and magnitude."
E2Helper.Descriptions["propCanCreate()"] = "Returns 1 when propSpawn() will successfully spawn a prop until the limit is reached."
E2Helper.Descriptions["propDrag(e:n)"] = "Passing 0 makes the entity not be affected by drag"
E2Helper.Descriptions["propInertia(e:n)"] = "Sets the directional inertia"
E2Helper.Descriptions["propInertia(e:v)"] = E2Helper.Descriptions["propInertia(e:n)"]
E2Helper.Descriptions["propDraw(e:n)"] = "Passing 0 disables rendering for the entity (makes it really invisible)"
E2Helper.Descriptions["propShadow(e:n)"] = "Passing 0 disables rendering for the entity's shadow"
E2Helper.Descriptions["propSleep(e:n)"] = "Puts an entity to 'sleep', causing it to stop moving until any physical interaction occurs."
E2Helper.Descriptions["propSetBuoyancy(e:n)"] = "Sets the prop's buoyancy ratio from 0 to 1"
E2Helper.Descriptions["propSetFriction(e:n)"] = "Sets prop's friction coefficient (default is 1)"
E2Helper.Descriptions["propGetFriction(e:)"] = "Gets prop's friction coefficient"
E2Helper.Descriptions["propSetElasticity(e:n)"] = "Sets prop's elasticity coefficient (default is 1)"
E2Helper.Descriptions["propGetElasticity(e:)"] = "Gets prop's elasticity coefficient"
E2Helper.Descriptions["propSpawnUndo(n)"] = "Set to 0 to force prop removal on E2 shutdown, and suppress Undo entries for props."
E2Helper.Descriptions["propDeleteAll()"] = "Removes all entities spawned by this E2"
E2Helper.Descriptions["propStatic(e:n)"] = "Sets to 1 to make the entity static (disables movement, physgun, unfreeze, drive...) or 0 to cancel."
E2Helper.Descriptions["propSetVelocity(e:v)"] = "Sets the velocity of the prop for the next iteration"
E2Helper.Descriptions["propSetVelocityInstant(e:v)"] = "Sets the initial velocity of the prop"
E2Helper.Descriptions["propSetAngVelocity(e:v)"] = "Sets the angular velocity of the prop for the next iteration"
E2Helper.Descriptions["propSetAngVelocityInstant(e:v)"] = "Sets the initial angular velocity of the prop"
E2Helper.Descriptions["use(e:)"] = "Simulates a player pressing their use key on the entity."
E2Helper.Descriptions["boneManipulate(b:vannn)"] = "Allows to do any single bone function in one term (position, rotation, freeze, gravity, collision)"
E2Helper.Descriptions["boneFreeze(b:n)"] = "Passing 0 unfreezes that specific bone, everything else freezes it."
E2Helper.Descriptions["ragdollFreeze(e:n)"] = "Passing 0 unfreezes the entire ragdoll."
E2Helper.Descriptions["setCollisions(b:n)"] = "Passing 0 will disable collisions with the everything but players"
E2Helper.Descriptions["setDrag(b:n)"] = "Passing 0 makes the bone not be affected by drag"
E2Helper.Descriptions["setInertia(b:v)"] = "Sets the directional inertia"
E2Helper.Descriptions["setPhysicalMaterial(b:s)"] = "Sets the surface material of the bone. (eg. wood, metal, ... See Material_surface_properties )"
E2Helper.Descriptions["setVelocity(b:v)"] = "Sets the velocity of the bone for the next iteration"
E2Helper.Descriptions["setVelocityInstant(b:v)"] = "Sets the initial velocity of the bone"
E2Helper.Descriptions["setAngVelocity(b:v)"] = "Sets the angular velocity of the bone for the next iteration"
E2Helper.Descriptions["setAngVelocityInstant(b:v)"] = "Sets the initial angular velocity of the bone"
E2Helper.Descriptions["makeStatue(e:n)"] = "Applies the 'statue' effect on a ragdoll. Remove it by passing 0."
E2Helper.Descriptions["setPos(b:v)"] = "Sets the position of a bone."
E2Helper.Descriptions["setAng(b:a)"] = "Set the rotation of a bone."
E2Helper.Descriptions["ragdollSetPos(e:v)"] = "Sets the position of a ragdoll while preserving pose."
E2Helper.Descriptions["ragdollSetAng(e:a)"] = "Set the rotation of a ragdoll while preserving pose."
E2Helper.Descriptions["ragdollGetAng(e)"] = "Gets the rotation of the root bone. This is equivalent to entity:bone(0):angles()"
E2Helper.Descriptions["ragdollGetPose(e:)"] = "Gets a specially built table containing the pose of the ragdoll. See ragdollSetPose."
E2Helper.Descriptions["ragdollSetPose(e:t)"] = "Sets the pose of a ragdoll while preserving position and angle. See ragdollGetPose."
E2Helper.Descriptions["ragdollSetPose(e:tn)"] = "Sets the pose of a ragdoll while preserving position. Setting rotate to 0 makes the ragdoll use the pose's original angle. See ragdollGetPose."
E2Helper.Descriptions["setEyeTarget(e:v)"] = "For NPCs, sets the eye target to the world position. For ragdolls, sets the eye target to the local eye position"
E2Helper.Descriptions["setEyeTargetLocal(e:v)"] = "Sets the eye target to the local eye position"
E2Helper.Descriptions["setEyeTargetWorld(e:v)"] = "Sets the eye target to the world position"
E2Helper.Descriptions["setFlexScale(e:n)"] = "Sets the flex scale of the entity"
E2Helper.Descriptions["setFlexWeight"] = "Sets the weight of the flex"
E2Helper.Descriptions["trackCollision(e)"] = "Starts tracking collisions for the entity, will fire event entityCollision when they occur. Does not track when players or vehicles hit world, only other entities.\nNeeds event entityCollision(entity, entity, collision) in order to run.\nReturns 1 on success or 0 on error in non-strict"
E2Helper.Descriptions["trackCollision(ef)"] = "Starts tracking collisions for the entity, will call the provided function, then fire event entityCollision when they occur.\nMay track without event entityCollision. Passed callback function needs argument signature of (eexcd), aka (entity, entity, collision)\nFor more info see trackCollision(e)"
E2Helper.Descriptions["isTrackingCollision(e)"] = "Returns 1 if the entity's collisions are already being tracked, 0 if not. Errors on an invalid ent"
E2Helper.Descriptions["stopTrackingCollision(e)"] = "Stops tracking collisions for the entity.\nError in strict if entity is invalid or entity isn't being tracked"
E2Helper.Descriptions["hitPos(xcd:)"] = "Returns a vector of where the collision ocurred"
E2Helper.Descriptions["pos(xcd:)"] = E2Helper.Descriptions["hitPos(xcd:)"] .. "\nAlias of hitPos(xcd:)"
E2Helper.Descriptions["position(xcd:)"] = E2Helper.Descriptions["pos(xcd:)"]
E2Helper.Descriptions["ourOldVelocity(xcd:)"] = "Returns a vector of the velocity of the tracked entity before the collision occurred."
E2Helper.Descriptions["entityOldVelocity(xcd:)"] = E2Helper.Descriptions["ourOldVelocity(xcd:)"] .. "\nAlias of ourOldVelocity(xcd:)"
E2Helper.Descriptions["theirOldVelocity(xcd:)"] = "Returns a vector of the velocity of the hit entity before the collision occurred"
E2Helper.Descriptions["hitEntityOldVelocity(xcd:)"] = E2Helper.Descriptions["theirOldVelocity(xcd:)"] .. "\nAlias of theirOldVelocity(xcd:)"
E2Helper.Descriptions["hitNormal(xcd:)"] = "Returns the hitnormal(vector) of the surface on the tracked entity that hit the other entity"
E2Helper.Descriptions["hitSpeed(xcd:)"] = "Returns a vector of the speed the impact occurred with"
E2Helper.Descriptions["ourNewVelocity(xcd:)"] = "Returns a vector of the velocity of the tracked entity after the collision occurred."
E2Helper.Descriptions["entityNewVelocity(xcd:)"] = E2Helper.Descriptions["ourNewVelocity(xcd:)"] .. "\nAlias of ourNewVelocity(xcd:)"
E2Helper.Descriptions["theirNewVelocity(xcd:)"] = "Returns a vector of the velocity of the hit entity after the collision occurred."
E2Helper.Descriptions["hitEntityNewVelocity(xcd:)"] = E2Helper.Descriptions["theirNewVelocity(xcd:)"] .. "\nAlias of theirNewVelocity(xcd:)"
E2Helper.Descriptions["ourOldAngularVelocity(xcd:)"] = "Returns a vector of the angular velocity of the tracked entity before the collision occurred."
E2Helper.Descriptions["entityOldAngularVelocity(xcd:)"] = E2Helper.Descriptions["ourOldAngularVelocity(xcd:)"] .. "\nAlias of ourOldAngularVelocity(xcd:)"
E2Helper.Descriptions["theirOldAngularVelocity(xcd:)"] = "Returns a vector of the angular velocity of the hit entity before the collision occurred."
E2Helper.Descriptions["hitEntityOldAngularVelocity(xcd:)"] = E2Helper.Descriptions["theirOldAngularVelocity(xcd:)"] .. "\nAlias of ourOldAngularVelocity(xcd:)"
E2Helper.Descriptions["speed(xcd:)"] = "Returns a number representing the speed at which the collision occurred."
E2Helper.Descriptions["ourSurfaceProps(xcd:)"] = "Returns a number representing the surface properties of the tracked entity"
E2Helper.Descriptions["entitySurfaceProps(xcd:)"] = E2Helper.Descriptions["ourSurfaceProps(xcd:)"] .. "\nAlias of ourSurfaceProps(xcd:)"
E2Helper.Descriptions["theirSurfaceProps(xcd:)"] = "Returns a number representing the surface properties of the hit entity"
E2Helper.Descriptions["hitEntitySurfaceProps(xcd:)"] = E2Helper.Descriptions["theirSurfaceProps(xcd:)"] .. "\nAlias of theirSurfaceProps(xcd:)"
E2Helper.Descriptions["deltaTime(xcd:)"] = "Returns a number representing how long ago the last collision between the tracked entity and the hit entity was, in seconds.\nCapped at 1 second."
E2Helper.Descriptions["hitEntity(xcd:)"] = "Returns the entity that was hit for this collision."
