SCIprogramming.com
Welcome,
Guest
. Please
login
or
register
.
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
Home
Games ▼
List All Games
AGI ►
All AGI
Complete
Competition
Demos
SCI ►
All SCI
Complete
Competition
Demos
Upload Your Game
Tools ▼
WIKI
All Tools
Tutorials ▼
AGI ►
Getting Started
Using AGIstudio
Tutorial 2: Blah
Tutorial 3: Blah
SCI ►
Getting Started
Using SCIcompanion
Your First Game
Advanced Techniques
SCI 1.1 ►
Getting Started
Using SCIcompanion
Your First Game
Advanced Techniques
Modifications
Community ▼
Forum Index
Gallery
Shop
Sierra's
SCI Tetris
SCI
* Source Code Included
September 21, 2020
by
Rainer De Temple
Total Downloads: 461
Game Description
No don't check your calendar, this isn't an April Fools joke...
It's all coded in one room. I've included the source for anyone who wants to take a look (warning it's quite messy). Anyone new to SCI programming might learn a few things.
How it works and my methodology:
I keep an array of the board in a 20x10 array. SCI doesn't support 2d arrays, so it's basically a 200 element array.
The blocks are programatically generated from one View (with 6 loops) and move down the board. A popular implementation of a Tetris game.
When the blocks hit the bottom they become part of the board and I used the AddToPic function. One of the issues I had to overcome was the addToPic library function doesn't work the way I wanted it to so I used the Kernel function instead.
Once I had the main game working, I added boundary and lines cleared detection. I used the template gScore and gMaxScore for the scoring. I also used the death handler but modified it to display a random Russian "Superstition" just for fun (and to abuse the text resource feature). I copied all the quotes from Wikipedia into a text file, then using a hex editor I replaced all the CRLF's with 0's and imported the text patch into my game.
The game gets progressively faster as you level up. Rosella is there to give you a sense of urgency.
I had a bit of trouble with keys. I'm not sure if SCI0 allows a key-held event. So for that reason you can't hold a key down you have to "tap" the key controls. I didn't spend a lot of time on controls so it might be possible to improve.
High scoring is saved to a local file in the game folder so that next time you play it's still there. The big font is just a "Russian" style Cyrillic-looking font that I found online.
Save and restore sort of don't work, but it wouldn't take much to make it work. But why you'd want that is beyond me hahaha.
There's also some midi music in there too.
I should also add I used Kawa's version of SCI Companion, but I don't think it makes any difference.
If anyone's wondering this is the result of about 12 hours coding/design/learning (about 2 days).
Ratings