Name:
Anonymous
2012-03-01 16:33
or the equivalent in your fag language of choice
evil? awesome? what does /prog/ think?
Name:
Anonymous
2012-11-01 12:40
I use eval to load scripts for game levels.
Also,
loadPud Path = u name:Path,pne,1 file:Path | clearGame
= TS:\summer = Tiles:ø = Gfxes:ø = Us:ø = Players:ø = Us:ø
= setTile:<P I = N: m ?+P Dirs | k (inRect WR ?)
= Tiles,I|u tile:P id:P,cellIndex neibs:N | setCell P>
= era:<[N @_] = !TS:PudTilesets,N = !Tileset:Tilesets.TS
= !Tiles:Tileset.tiles = !Gfxes:Tileset.gfxes>
= sres:<R Xs = grp 2 Xs | m ul | n | e <[A I]=!Players.I.R:A>>
= Handlers:u
\DESC:<Xs = !GameInfo|u desc:(take {pos 0 Xs;32} Xs | utf8)>
\`ERA `:era \ERAX:era
\`DIM `:<[W:@2.ul H:@2.ul @_] = !WW:W+2WM = !WH:H+2WM = !MMD:128%(WW-2WM)
= !MMWH:l MMD MMD = !WR:[WM WM WW-2WM WH-2WM]>
\OWNR:<Xs = m PudPlayers,? Xs | n | e <[P I]
= T:UTs.player = !T.color:P,<\neutral=\yellow; _=PlayerColors,I>
= U: newUnit 0 T.color = {P,n? = !U.nobody:√}
= !Players.I: U|u name:“Player$I” playable:P,<\person>
rescueable:(q capturable rescueable | fnd P)
tile:WMO team:PudTeams.P>>
\SIDE:<Xs = m (q human orc neutral),? Xs | n | e <[S I]=!Players.I.side:S>>
\SGLD:<X=sres \gold X> \SLBR:<X=sres \wood X> \SOIL:<X=sres \oil X>
\AIPL:<Xs = n Xs | e <[1 I]=!Players.I.passive:√>>
\MTXM:<Xs = M: grp 2 Xs | m ul = hyp @WR |n|e:[P I] setTile P M,I>
\UNIT:<[X:@2.ul Y:@2.ul I O D:@2.ul @Xs]
= XY:[X+WM Y+WM] = T:I,<57=Critters.TS; _=PudUnits.I>
= T,<ø = error “Invalid unit slot: $I”
;\player = !Players.O.tile:XY
= !Players.O.view:32XY
;T =l [XY O+1 T D]@!Us>
= r Xs>
= get Path | <[M:@4.utf8 L:@4.ul D:@L.y? @Xs]=[[M D] @Xs,r]>
| <[[\TYPE _]@Xs]=Xs; _ = error “Invalid PUD file: $Path”> | e:[T D] {h:Handlers.T = h D}
= l [WW-WM 0 WM WH] [0 WH-WM WW WM] [0 0 WM WH] [0 0 WW WM] | m:X hyp @X | j | m:P setTile P 0
= Players | e <[_ U]
= !U.enemies: Players | filter:[_ P] (P.team≤≥U.team |a P.team≤≥0 |a U.team≤≥0 |a P.id)
= aset U.id U Units
= {U.playable = !ThisPlayer:U.id
;U.nobody = U.id,delUnit}>
= Us | e <[XY O T D] = U: newUnit O T
= {R:U.resource = !U.R: D*2500}
= F:U.supply-U.cost.food = {F,nz? =l [U.id \food F]@!NQs.O.add}
= {U.building,n? = !U.dir: pick Dirs}
= deployUnit XY U>
= hyp @WR | e mmUpdate
= ø