Tetris
A tetris minigame simulation. (Because i'm bored)
This plugin ports the well known russian Tetris game to SourceMod. Players are able to play Tetris in a menu and compare their highscores.

Just type !tetris (sm_tetris) in chat and start a new game. Try to clear as many lines as possible and reach a high score until your blocks reach the top.
Controls are intuitive. Just use your walking keys. Left and right move the current tetrimino in that direction, up rotates it clockwise and down speeds up the falling.
Players may also press jump (spacebar) to hard drop the tetrimino and let it fall to the floor immediately.

There are some stats on the right, showing your current level, number of cleared lines, score and the next tetrimino.
Scoring is based on this tables. T-Spins aren't rewarded though..
There are 3 difficulties differing in the tetrimino fallingspeed. Each difficulty has it's on TOP 5 highscore list, which may be accessed from the !tetris main menu. Next to the global top5, players are able to check their own best scores for each difficulty.
This plugin uses clientprefs to save the sound settings of each player. Each player may individually enable/disable the sound effects or music.
ConVars:
Some users' machines are unable to display UTF-8 chars ingame, so they won't be able to play this game as they will only see messy squares all over. It's clientside and i don't know how to fix that
Developers:
The tetris.inc include provides one native to be implemented into ALL afk managers out there!!!1
Thanks to:
Did you see...:
Sounds from hark.com.
Note: This plugin won't compile on the forum due to it's custom include. Use the provided .smx or compile yourself.
A tetris minigame simulation. (Because i'm bored)
This plugin ports the well known russian Tetris game to SourceMod. Players are able to play Tetris in a menu and compare their highscores.

Just type !tetris (sm_tetris) in chat and start a new game. Try to clear as many lines as possible and reach a high score until your blocks reach the top.
Controls are intuitive. Just use your walking keys. Left and right move the current tetrimino in that direction, up rotates it clockwise and down speeds up the falling.
Players may also press jump (spacebar) to hard drop the tetrimino and let it fall to the floor immediately.

There are some stats on the right, showing your current level, number of cleared lines, score and the next tetrimino.
Scoring is based on this tables. T-Spins aren't rewarded though..
There are 3 difficulties differing in the tetrimino fallingspeed. Each difficulty has it's on TOP 5 highscore list, which may be accessed from the !tetris main menu. Next to the global top5, players are able to check their own best scores for each difficulty.
This plugin uses clientprefs to save the sound settings of each player. Each player may individually enable/disable the sound effects or music.
ConVars:
- sm_tetris_disableharddrop - Disable hard dropping the tetrimino instantly to the floor with the spacebar? (Default: 0)
- sm_tetris_disablesounds - Disable all tetris sounds? (Default: 0)
- Upload the tetris.smx into you sourcemod/plugins folder.
- If you want to enable the tetris sounds, extract the tetris_sounds.zip into your modfolder and upload it on your fastdl, if you use one. If you don't want sounds set sm_tetris_disablesounds to 1!
- Edit your databases.cfg and add a "tetris" section to save the highscores in.
- SQLite: Code:
"tetris"
{
"driver" "sqlite"
"database" "tetris"
} - MySQL: Code:
"tetris"
{
"driver" "mysql"
"host" "localhost"
"database" "tetris"
"user" "youruser"
"pass" "yourpass"
//"timeout" "0"
"port" "3306"
} - If you use mysql, execute this query to create the table: PHP Code:
CREATE TABLE `tetris_players` (
`steamid` VARCHAR( 64 ) NOT NULL,
`name` VARCHAR( 64 ) NOT NULL,
`score_easy` INT NOT NULL DEFAULT '0',
`score_normal` INT NOT NULL DEFAULT '0',
`score_hard` INT NOT NULL DEFAULT '0',
PRIMARY KEY ( `steamid` )
) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
- SQLite:
- Change the map to load the plugin and configure it in the newly generated config file in cfg/sourcemod/plugin.tetris.cfg.
Some users' machines are unable to display UTF-8 chars ingame, so they won't be able to play this game as they will only see messy squares all over. It's clientside and i don't know how to fix that

Developers:
The tetris.inc include provides one native to be implemented into ALL afk managers out there!!!1
PHP Code:
/**
* Check if a player is currently playing tetris.
*
* @param client Client index.
* @return True if the player is currently playing tetris, false otherwise.
*/
native bool:IsClientInTetrisGame(client);
- berni/Chanz for their fabulous smlib
- exvel for his colors include
- twistedpanda for his time on google to find the scoring!!
Did you see...:
Sounds from hark.com.
Note: This plugin won't compile on the forum due to it's custom include. Use the provided .smx or compile yourself.
Wyświetl pełny artykuł