# `QuakeServer.Requests`
[🔗](https://github.com/jaman/quake_server/blob/v0.1.0/lib/quake_server/requests.ex#L1)

A client program's `sendevent` arriving at the server, as FTE handles one (its
`qcrequest`): the program's function `CSEv_<name>_<types>` runs with `self` the player
and the values in its parameters, `types` being one letter a value — `f` float, `v`
vector, `i` integer, `s` string, `e` entity. Without values the function is
`CSEv_<name>_` when the name holds an underscore and `CSEv_<name>` otherwise. A name
the program has no function for prints that the request is not supported.

    server = QuakeServer.Requests.run(server, 1, "PlayerSwitchWeapon", [{"i", 3}])

An entity is given by its number on the server; one past the last entity is the world.

# `run`

```elixir
@spec run(QuakeServer.Server.t(), non_neg_integer(), String.t(), [
  {String.t(), term()}
]) ::
  QuakeServer.Server.t()
```

Run the request `name` with `values` (`{type, value}` pairs) for player `entity`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
