Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
Synchronet
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Main
Synchronet
Commits
fd8ea3aa
Commit
fd8ea3aa
authored
13 years ago
by
echicken
Browse files
Options
Downloads
Patches
Plain Diff
Removed some unnecessary stuff. Contemplated the meaninglessness of existence.
parent
aa10ff66
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
xtrn/chickendelivery/game.js
+19
-20
19 additions, 20 deletions
xtrn/chickendelivery/game.js
with
19 additions
and
20 deletions
xtrn/chickendelivery/game.js
+
19
−
20
View file @
fd8ea3aa
...
...
@@ -3,21 +3,23 @@ load("json-client.js");
client
.
subscribe
(
"
chickendelivery
"
,
"
chickenScores
"
);
var
baseDir
=
"
/sbbs/xtrn/chickendelivery/
"
;
// The location of chicken.js, et al
// The values of score, lives, level, and mileStone should match on every BBS
// that is using the same json-db server (as configured in server.ini.) Don't
// change these values without consulting the json-db server admin first.
var
score
=
0
;
// The player's starting score
var
lives
=
5
;
// The number of lives the player starts with
var
level
=
1
;
// The level that the player starts at
var
mileStone
=
2500
;
// How many points must a player earn to win a free life
// Edit below this line at your own peril.
var
quitNow
=
false
;
// Try this shit
var
collision
=
false
;
// Dim c as collision, that is cool
var
levelCompleted
=
false
;
// Your iQ is at the level of 10
var
frame
=
new
Frame
(
1
,
1
,
80
,
24
,
BG_BLACK
);
var
frame
=
new
Frame
(
1
,
1
,
80
,
24
,
BG_BLACK
);
// Parent of all frames
frame
.
open
();
var
splashScreen
=
new
Frame
(
1
,
1
,
80
,
24
,
BG_BLACK
,
frame
);
var
scoreFrame
=
new
Frame
(
12
,
2
,
58
,
22
,
BG_BLACK
,
frame
);
var
netScoreFrame
=
new
Frame
(
3
,
3
,
75
,
21
,
BG_BLACK
,
frame
);
var
instructionFrame
=
new
Frame
(
8
,
3
,
68
,
20
,
BG_BLACK
,
frame
);
var
menuFrame
=
new
Frame
(
2
,
10
,
16
,
6
,
BG_BLACK
,
frame
);
...
...
@@ -28,12 +30,12 @@ var lifeBox = new Frame(60, 1, 10, 1, BG_BLACK, statusBar);
var
timeBox
=
new
Frame
(
70
,
1
,
10
,
1
,
BG_BLACK
,
statusBar
);
var
player
=
new
Frame
(
1
,
1
,
5
,
4
,
BG_BLACK
,
frame
);
splashScreen
.
load
(
baseD
ir
+
"
ckndlvry.ans
"
);
splashScreen
.
load
(
js
.
exec_d
ir
+
"
ckndlvry.ans
"
);
frame
.
cycle
();
mswait
(
500
);
menuFrame
.
load
(
baseD
ir
+
"
menu.ans
"
);
menuFrame
.
load
(
js
.
exec_d
ir
+
"
menu.ans
"
);
frame
.
cycle
();
var
userInput
=
''
;
...
...
@@ -42,7 +44,7 @@ while(userInput != 'P') {
userInput
=
console
.
getkey
(
K_NOSPIN
|
K_NOECHO
|
K_NOCRLF
).
toUpperCase
();
switch
(
userInput
)
{
case
'
I
'
:
instructionFrame
.
open
();
instructionFrame
.
load
(
baseD
ir
+
"
instruct.ans
"
);
instructionFrame
.
load
(
js
.
exec_d
ir
+
"
instruct.ans
"
);
frame
.
cycle
();
console
.
getkey
(
K_NOSPIN
|
K_NOECHO
|
K_NOCRLF
);
instructionFrame
.
close
();
...
...
@@ -51,8 +53,6 @@ while(userInput != 'P') {
continue
;
// Scores
case
'
Q
'
:
frame
.
close
();
exit
();
case
'
L
'
:
if
(
user
.
alias
==
"
echicken
"
)
level
=
console
.
getstr
();
continue
;
}
}
menuFrame
.
close
();
...
...
@@ -60,7 +60,7 @@ splashScreen.close();
while
(
!
js
.
terminated
)
{
var
f
=
new
File
(
baseD
ir
+
"
levels/
"
+
level
+
"
.ini
"
);
var
f
=
new
File
(
js
.
exec_d
ir
+
"
levels/
"
+
level
+
"
.ini
"
);
f
.
open
(
"
r
"
);
var
iniPlatforms
=
f
.
iniGetObject
(
"
Platforms
"
);
var
iniEnemies
=
f
.
iniGetObject
(
"
Enemies
"
);
...
...
@@ -92,9 +92,9 @@ while(!js.terminated) {
player
.
moveTo
(
parseInt
(
entry
[
0
]),
parseInt
(
entry
[
1
]));
player
.
direction
=
entryDirection
;
if
(
entryDirection
==
'
r
'
)
{
player
.
load
(
baseD
ir
+
"
sprites/player-r.ans
"
);
player
.
load
(
js
.
exec_d
ir
+
"
sprites/player-r.ans
"
);
}
else
{
player
.
load
(
baseD
ir
+
"
sprites/player-l.ans
"
);
player
.
load
(
js
.
exec_d
ir
+
"
sprites/player-l.ans
"
);
}
var
platforms
=
new
Array
();
...
...
@@ -105,14 +105,14 @@ while(!js.terminated) {
}
var
doorFrame
=
new
Frame
(
parseInt
(
door
[
0
]),
parseInt
(
door
[
1
]),
5
,
4
,
BG_BLACK
,
frame
);
doorFrame
.
load
(
baseD
ir
+
"
sprites/
"
+
door
[
2
].
toString
());
doorFrame
.
load
(
js
.
exec_d
ir
+
"
sprites/
"
+
door
[
2
].
toString
());
doorFrame
.
score
=
door
[
3
];
var
enemies
=
new
Array
();
for
(
var
e
in
iniEnemies
)
{
var
thisEnemy
=
iniEnemies
[
e
].
split
(
"
,
"
);
enemies
[
e
]
=
new
Frame
(
parseInt
(
thisEnemy
[
0
]),
parseInt
(
thisEnemy
[
1
]),
5
,
4
,
BG_BLACK
,
frame
);
enemies
[
e
].
load
(
baseD
ir
+
"
sprites/
"
+
thisEnemy
[
2
].
toString
());
enemies
[
e
].
load
(
js
.
exec_d
ir
+
"
sprites/
"
+
thisEnemy
[
2
].
toString
());
enemies
[
e
].
direction
=
thisEnemy
[
5
];
enemies
[
e
].
lastStep
=
system
.
timer
;
enemies
[
e
].
lastX
=
parseInt
(
thisEnemy
[
0
]);
...
...
@@ -200,7 +200,7 @@ while(!js.terminated) {
nlFrame
.
center
(
"
\
1h
\
1w< Press Enter >
"
);
nlFrame
.
cycle
();
while
(
console
.
getkey
(
K_NOECHO
)
!==
"
\r
"
);
if
(
!
file_exists
(
baseD
ir
+
"
levels/
"
+
(
level
+
1
)
+
"
.ini
"
))
{
if
(
!
file_exists
(
js
.
exec_d
ir
+
"
levels/
"
+
(
level
+
1
)
+
"
.ini
"
))
{
nlFrame
.
close
();
winScreen
();
addNetScore
();
...
...
@@ -217,7 +217,7 @@ while(!js.terminated) {
function
right
(
player
,
frame
,
steps
,
nofall
,
nocycle
)
{
if
(
player
.
direction
==
'
l
'
&&
!
player
.
hasOwnProperty
(
"
borderL
"
))
{
player
.
clear
();
player
.
load
(
baseD
ir
+
"
sprites/player-r.ans
"
);
player
.
load
(
js
.
exec_d
ir
+
"
sprites/player-r.ans
"
);
player
.
direction
=
'
r
'
;
return
;
}
...
...
@@ -233,7 +233,7 @@ function right(player, frame, steps, nofall, nocycle) {
function
left
(
player
,
frame
,
steps
,
nofall
,
nocycle
)
{
if
(
player
.
direction
==
'
r
'
&&
!
player
.
hasOwnProperty
(
"
borderL
"
))
{
player
.
clear
();
player
.
load
(
baseD
ir
+
"
sprites/player-l.ans
"
);
player
.
load
(
js
.
exec_d
ir
+
"
sprites/player-l.ans
"
);
player
.
direction
=
'
l
'
;
return
;
}
...
...
@@ -382,7 +382,7 @@ function winScreen() {
frame
.
cycle
();
var
winner
=
new
Frame
(
1
,
10
,
5
,
4
,
BG_BLACK
,
winFrame
);
winner
.
open
();
winner
.
load
(
baseD
ir
+
"
sprites/player-r.ans
"
);
winner
.
load
(
js
.
exec_d
ir
+
"
sprites/player-r.ans
"
);
winFrame
.
cycle
();
for
(
var
m
=
1
;
m
<=
38
;
m
++
)
{
winner
.
move
(
1
,
0
);
...
...
@@ -408,7 +408,7 @@ function winScreen() {
if
(
checkOverlap
(
winner
,
starFrames
[
s
]))
continue
;
if
(
starFrames
[
s
].
stage
==
5
)
starFrames
[
s
].
stage
=
1
;
starFrames
[
s
].
clear
();
starFrames
[
s
].
load
(
baseD
ir
+
"
sprites/star-
"
+
starFrames
[
s
].
stage
+
"
.ans
"
);
starFrames
[
s
].
load
(
js
.
exec_d
ir
+
"
sprites/star-
"
+
starFrames
[
s
].
stage
+
"
.ans
"
);
starFrames
[
s
].
stage
++
;
starFrames
[
s
].
cycle
();
}
...
...
@@ -421,7 +421,7 @@ function showNetScores() {
var
scores
=
client
.
read
(
"
chickendelivery
"
,
"
chickenScores
"
,
1
);
netScoreFrame
.
open
();
netScoreFrame
.
clear
();
netScoreFrame
.
load
(
baseD
ir
+
"
netscore.ans
"
);
netScoreFrame
.
load
(
js
.
exec_d
ir
+
"
netscore.ans
"
);
netScoreFrame
.
gotoxy
(
3
,
6
);
var
highScores
=
new
Array
();
for
(
var
s
in
scores
)
highScores
.
push
(
scores
[
s
].
score
);
...
...
@@ -489,4 +489,3 @@ function quitGame() {
client
.
unsubscribe
();
exit
();
}
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment