butterflies, spiders, pretty twiglets, new pickups
This commit is contained in:
parent
be2bd4ba1f
commit
dca225bc0a
12 changed files with 1083 additions and 287 deletions
|
@ -27,7 +27,8 @@
|
|||
(seed-return #f)
|
||||
(seed-return-timer 0)
|
||||
(seed-return-secs-per-point 3)
|
||||
(twig-stack '()))
|
||||
(twig-stack '())
|
||||
(above-ground #f))
|
||||
|
||||
(define/public (set-player-plant s)
|
||||
(set! pos (send s get-pos))
|
||||
|
@ -49,7 +50,6 @@
|
|||
(define/public (setup)
|
||||
(lock-camera cam)
|
||||
(camera-lag 0.2)
|
||||
(clip 1 300)
|
||||
(set-camera-transform (mtranslate (vector 0 0 -4))))
|
||||
|
||||
; moveme
|
||||
|
@ -144,6 +144,16 @@
|
|||
(set! seed-return #t)
|
||||
(set! current-point (- (send current-twig get-num-points) 1)))
|
||||
|
||||
(cond
|
||||
((and (not above-ground) (> (vy (vadd player-pos pos)) 0))
|
||||
(set! above-ground #t)
|
||||
(send game-view above-ground)
|
||||
(printf "up~n"))
|
||||
((and above-ground (< (vy (vadd player-pos pos)) 0))
|
||||
(set! above-ground #f)
|
||||
(send game-view below-ground)
|
||||
(printf "down~n")))
|
||||
|
||||
(let* ((side (vnormalise (vcross up fwd)))
|
||||
(up (vnormalise (vcross fwd side))))
|
||||
|
||||
|
|
|
@ -13,25 +13,28 @@
|
|||
(players (list
|
||||
(make-player-info "plant0000001@fo.am" "plant0000001"
|
||||
"textures/plant0000001.png" (list-ref (list-ref seed-obs 0) 2)
|
||||
(vector 0.5 1 0.5))
|
||||
(vector 0.5 0.5 0.5))
|
||||
(make-player-info "plant0000002@fo.am" "plant0000002"
|
||||
"textures/plant0000002.png" (list-ref (list-ref seed-obs 1) 2)
|
||||
(vector 0.5 1 0))
|
||||
(vector 0.25 0.25 0.25))
|
||||
(make-player-info "plant0000003@fo.am" "plant0000003"
|
||||
"textures/plant0000003.png" (list-ref (list-ref seed-obs 2) 2)
|
||||
(vector 0 1 0.5))
|
||||
(vector 0.7 0.7 0.7))
|
||||
(make-player-info "plant0000004@fo.am" "plant0000004"
|
||||
"textures/plant0000004.png" (list-ref (list-ref seed-obs 3) 2)
|
||||
(vector 0.75 1 0.5))
|
||||
(vector 0.75 0.75 0.75))
|
||||
(make-player-info "plant0000005@fo.am" "plant0000005"
|
||||
"textures/plant0000005.png" (list-ref (list-ref seed-obs 4) 2)
|
||||
(vector 0.5 1 0.75))
|
||||
(vector 0.1 0.1 0.1))
|
||||
))
|
||||
(seeds '())
|
||||
(clicked -1))
|
||||
|
||||
(define/public (get-player-info)
|
||||
(list-ref players clicked))
|
||||
|
||||
(define/public (get-players)
|
||||
players)
|
||||
|
||||
(define/public (setup)
|
||||
(let ((c 0))
|
||||
|
@ -87,15 +90,28 @@
|
|||
(player #f)
|
||||
(logic-tick 0.5)) ; time between logic updates
|
||||
|
||||
(define/public (setup pi)
|
||||
(define/public (setup pi players)
|
||||
(set! cl (make-object client% (player-info-jid pi) (player-info-pass pi)))
|
||||
(set! player (make-object plant-logic%
|
||||
(player-info-jid pi)
|
||||
(player-info-pos pi)
|
||||
(player-info-col pi)
|
||||
(player-info-tex pi)))
|
||||
(player-info-tex pi)
|
||||
#t))
|
||||
(send c set-player-plant player)
|
||||
(send gl add-player player)
|
||||
|
||||
; add the other players...
|
||||
(for-each
|
||||
(lambda (player)
|
||||
(when (not (eq? player pi))
|
||||
(send gl add-plant (make-object plant-logic%
|
||||
(player-info-jid player)
|
||||
(player-info-pos player)
|
||||
(player-info-col player)
|
||||
(player-info-tex player)))))
|
||||
players)
|
||||
|
||||
(send c setup)
|
||||
(send gv setup world-list)
|
||||
(send gl setup world-list)
|
||||
|
@ -105,7 +121,7 @@
|
|||
(when (< tick-time t)
|
||||
|
||||
|
||||
(let ((messages (send gl update)))
|
||||
(let ((messages (send gl update t d)))
|
||||
; pass the messages to the network client
|
||||
(send gv update t d (send cl update messages gl))) ; and the game view
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#lang scheme/base
|
||||
(require scheme/class openssl (prefix-in xmpp: "xmpp.ss"))
|
||||
(require scheme/class); openssl (prefix-in xmpp: "xmpp.ss"))
|
||||
(provide (all-defined-out))
|
||||
|
||||
; a class which wraps the xmpp in a thread and allows messages to be picked up
|
||||
|
@ -36,9 +36,9 @@
|
|||
(define/public (send-msg to msg)
|
||||
(set! outgoing (append outgoing (list (list to msg)))))
|
||||
|
||||
(define (message-handler sz)
|
||||
(when debug-jab (printf "rx <---- ~a ~a~n" (xmpp:message-from sz) (xmpp:message-body sz)))
|
||||
(set! incoming (cons (list (xmpp:message-from sz) (xmpp:message-body sz)) incoming)))
|
||||
(define (message-handler sz) 0)
|
||||
; (when debug-jab (printf "rx <---- ~a ~a~n" (xmpp:message-from sz) (xmpp:message-body sz)))
|
||||
;(set! incoming (cons (list (xmpp:message-from sz) (xmpp:message-body sz)) incoming)))
|
||||
|
||||
(define/public (start)
|
||||
(set! thr (thread run)))
|
||||
|
@ -46,8 +46,8 @@
|
|||
(define/public (stop)
|
||||
(kill-thread thr))
|
||||
|
||||
(define (run)
|
||||
(xmpp:with-xmpp-session jid pass
|
||||
(define (run) 0
|
||||
#;(xmpp:with-xmpp-session jid pass
|
||||
(xmpp:set-xmpp-handler 'message message-handler)
|
||||
(let loop ()
|
||||
(when debug-netloop (printf ".~n"))
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
(define start-twig-points 15)
|
||||
(define start-twig-dist 0.05)
|
||||
(define start-twig-width 0.1)
|
||||
(define default-max-twigs 5)
|
||||
(define default-max-twigs 2)
|
||||
(define default-scale-factor 1.05)
|
||||
(define num-pickups 10)
|
||||
(define pickup-dist-radius 200)
|
||||
|
@ -19,6 +19,12 @@
|
|||
(define start-size 50)
|
||||
(define max-ornaments 10) ; per twig
|
||||
(define nutrient-twig-size-increase 2)
|
||||
(define num-worms 10)
|
||||
(define num-spiders 10)
|
||||
(define num-butterflies 10)
|
||||
(define auto-twig-var 5)
|
||||
(define auto-time 5)
|
||||
(define pickup-check-prob 20)
|
||||
|
||||
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
; the base class logic object - all logic side objects can
|
||||
|
@ -41,8 +47,8 @@
|
|||
((list? (car l)) (append (flatten (car l)) (flatten (cdr l))))
|
||||
(else (cons (car l) (flatten (cdr l))))))
|
||||
|
||||
(define/pubment (update) ; need to augement this if we have child logic objects,
|
||||
(let ((l (inner '() update)) ; and call update on them too.
|
||||
(define/pubment (update t d) ; need to augement this if we have child logic objects,
|
||||
(let ((l (inner '() update t d)) ; and call update on them too.
|
||||
(m messages))
|
||||
(set! messages '())
|
||||
(append
|
||||
|
@ -51,6 +57,62 @@
|
|||
|
||||
(super-new)))
|
||||
|
||||
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
(define insect-logic%
|
||||
(class game-logic-object%
|
||||
(init-field
|
||||
(id 0)
|
||||
(pos 0)
|
||||
(type 'none)
|
||||
(d (if (eq? type 'worm) (+ 20 (* 20 (rndf)))
|
||||
(+ 10 (* 2 (rndf)))))) ; time to get from one place to another
|
||||
|
||||
(field
|
||||
(next-update 0)
|
||||
(centre (vector 0 0 0)))
|
||||
|
||||
(inherit send-message)
|
||||
|
||||
(define/public (get-id)
|
||||
id)
|
||||
|
||||
(define/public (get-pos)
|
||||
pos)
|
||||
|
||||
(define/public (get-type)
|
||||
type)
|
||||
|
||||
(define/public (set-centre s)
|
||||
(set! centre s))
|
||||
|
||||
(define (move)
|
||||
; todo check stones
|
||||
(let ((speed (if (eq? type 'worm) 5 50)))
|
||||
(if (> (vdist pos centre) 100)
|
||||
(set! pos (vadd pos (vmul (vnormalise (vsub centre pos)) speed)))
|
||||
(set! pos (vadd pos (vmul (srndvec) speed))))
|
||||
;(when (< (vdist pos centre) 12) (move))
|
||||
(when (and (or (eq? type 'spider) (eq? type 'worm)) (> (vy pos) 0))
|
||||
(set! pos (vector (vx pos) 0 (vz pos))))
|
||||
(when (and (eq? type 'butterfly) (< (vy pos) 50))
|
||||
(set! pos (vector (vx pos) 50 (vz pos))))))
|
||||
|
||||
(define/augment (update time delta)
|
||||
(cond ((> time next-update)
|
||||
(move)
|
||||
; todo: drop stuff
|
||||
;(when (zero? (random pickup-drop-probability))
|
||||
; (send cell set-pickup! 'default))
|
||||
(set! next-update (+ time d))
|
||||
(send-message 'insect-move (list
|
||||
(list 'insect-id id)
|
||||
(list 'pos pos)
|
||||
(list 'duration d)))))
|
||||
'())
|
||||
|
||||
(super-new)))
|
||||
|
||||
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
; a twig, which can contain other twigs things.
|
||||
; (roots and shoots are both twigs)
|
||||
|
@ -245,15 +307,15 @@
|
|||
twigs)
|
||||
found)))
|
||||
|
||||
(define/augment (update)
|
||||
(define/augment (update t d)
|
||||
(append
|
||||
(map
|
||||
(lambda (ornament)
|
||||
(send (cadr ornament) update))
|
||||
(send (cadr ornament) update t d))
|
||||
ornaments)
|
||||
(map
|
||||
(lambda (twig)
|
||||
(send (cadr twig) update))
|
||||
(send (cadr twig) update t d))
|
||||
twigs)))
|
||||
|
||||
(super-new)))
|
||||
|
@ -323,19 +385,25 @@
|
|||
(id #f)
|
||||
(pos (vector 0 0 0))
|
||||
(col (vector 1 1 1))
|
||||
(tex "fff"))
|
||||
(tex "fff")
|
||||
(is-player #f))
|
||||
|
||||
(field
|
||||
(twigs '()) ; a assoc list map of ids to twigs
|
||||
(leader-twig #f) ; the temporary twig controlled by the player
|
||||
(properties '()) ; a list of symbols - properties come from pickups
|
||||
(properties '(flower)) ; a list of symbols - properties come from pickups
|
||||
(ornaments '()) ; map of ids to ornaments on the plant
|
||||
(size start-size) ; the age of this plant
|
||||
(max-twigs default-max-twigs) ; the maximum twigs allowed at any time - oldest removed first
|
||||
(next-twig-id 0)
|
||||
(next-ornament-id 0)
|
||||
(grow-amount default-scale-factor)
|
||||
(twig-size start-twig-points))
|
||||
(twig-size start-twig-points)
|
||||
(auto-pilot-t 0)
|
||||
(auto-pilot-d (* (+ 1 (rndf)) auto-time))
|
||||
(auto-twig #f)
|
||||
(auto-twig-dir (hsrndvec))
|
||||
(auto-twig-pos (vector 0 0 0)))
|
||||
|
||||
(inherit send-message)
|
||||
|
||||
|
@ -384,8 +452,9 @@
|
|||
next-ornament-id))
|
||||
|
||||
(define/public (check-pickup pickup)
|
||||
(when leader-twig
|
||||
(send leader-twig check-pickup pickup))
|
||||
(when (or is-player (random pickup-check-prob)) ; reduce the frequency for non-player plants
|
||||
(when leader-twig
|
||||
(send leader-twig check-pickup pickup))
|
||||
|
||||
#;(foldl
|
||||
(lambda (twig found)
|
||||
|
@ -394,7 +463,7 @@
|
|||
(send (cadr twig) check-pickup pickup))
|
||||
#f))
|
||||
#f
|
||||
twigs))
|
||||
twigs)))
|
||||
|
||||
(define/public (destroy-twig twig)
|
||||
(send-message 'shrink-twig
|
||||
|
@ -461,7 +530,24 @@
|
|||
(send (cadr twig) serialise))
|
||||
twigs))))
|
||||
|
||||
(define/augment (update)
|
||||
(define/public (run-auto-pilot t d)
|
||||
(when (> t auto-pilot-t)
|
||||
(set! auto-pilot-t (+ t auto-pilot-d))
|
||||
(when (or (not auto-twig) (not (send auto-twig growing?)))
|
||||
(set! auto-twig (make-object twig-logic% (vector 0 0 0) 0 this 'root
|
||||
auto-twig-dir
|
||||
start-twig-width
|
||||
twig-size
|
||||
'ribbon))
|
||||
(set! auto-twig-dir (hsrndvec))
|
||||
(set! auto-twig-pos auto-twig-dir)
|
||||
(add-twig auto-twig))
|
||||
(set! auto-twig-dir (vmul (vnormalise (vadd auto-twig-dir (vmul (srndvec) auto-twig-var)))
|
||||
(send auto-twig get-dist)))
|
||||
(set! auto-twig-pos (vadd auto-twig-pos auto-twig-dir))
|
||||
(grow auto-twig-pos)))
|
||||
|
||||
(define/augment (update t d)
|
||||
; grow a new ornament?
|
||||
(when (and (not (null? properties)) (zero? (random ornament-grow-probability)))
|
||||
(let ((twig (get-random-twig)))
|
||||
|
@ -479,7 +565,7 @@
|
|||
point-index))))))
|
||||
(map
|
||||
(lambda (twig)
|
||||
(send (cadr twig) update))
|
||||
(send (cadr twig) update t d))
|
||||
twigs))
|
||||
|
||||
(super-new)))
|
||||
|
@ -491,7 +577,8 @@
|
|||
(field
|
||||
(plants '())
|
||||
(pickups '())
|
||||
(player #f))
|
||||
(player #f)
|
||||
(insects '()))
|
||||
|
||||
(inherit send-message)
|
||||
|
||||
|
@ -503,10 +590,16 @@
|
|||
(add-pickup (make-object pickup-logic% i (list-ref pickup 0)
|
||||
(list-ref pickup 2)))
|
||||
(set! i (+ i 1)))
|
||||
pickups))))
|
||||
pickups)
|
||||
(for ((id (in-range 0 num-worms)))
|
||||
(add-insect (make-object insect-logic% id (vmul (srndvec) 100) 'worm)))
|
||||
(for ((id (in-range 0 num-spiders)))
|
||||
(add-insect (make-object insect-logic% (+ id num-worms) (vmul (srndvec) 100) 'spider)))
|
||||
(for ((id (in-range 0 num-butterflies)))
|
||||
(add-insect (make-object insect-logic% (+ id num-worms num-butterflies) (vmul (srndvec) 100) 'butterfly)))
|
||||
)))
|
||||
|
||||
(define/public (add-player plant)
|
||||
(printf "new player plant added ~a~n" (send plant get-id))
|
||||
(send-message 'player-plant (list
|
||||
(list 'plant-id (send plant get-id))
|
||||
(list 'pos (send plant get-pos))
|
||||
|
@ -514,7 +607,12 @@
|
|||
(list 'col (send plant get-col))
|
||||
(list 'tex (send plant get-tex))))
|
||||
(set! player plant)
|
||||
(set! plants (cons plant plants)))
|
||||
(set! plants (cons plant plants))
|
||||
|
||||
(for-each
|
||||
(lambda (insect)
|
||||
(send insect set-centre (send plant get-pos)))
|
||||
insects))
|
||||
|
||||
(define/public (add-plant plant)
|
||||
(send-message 'new-plant (list
|
||||
|
@ -532,20 +630,40 @@
|
|||
(list 'type (send pickup get-type))
|
||||
(list 'pos (send pickup get-pos))))
|
||||
(set! pickups (cons pickup pickups)))
|
||||
|
||||
(define/public (add-insect insect)
|
||||
(send-message 'new-insect (list
|
||||
(list 'insect-id (send insect get-id))
|
||||
(list 'pos (send insect get-pos))
|
||||
(list 'type (send insect get-type))))
|
||||
(send insect set-centre (send player get-pos))
|
||||
(set! insects (cons insect insects)))
|
||||
|
||||
(define/public (serialise)
|
||||
(send player serialise))
|
||||
|
||||
|
||||
(define/public (run-auto-pilot t d)
|
||||
(for-each
|
||||
(lambda (plant)
|
||||
(when (not (eq? plant player))
|
||||
(send plant run-auto-pilot t d)))
|
||||
plants))
|
||||
|
||||
|
||||
; todo - distribute the checking of stuff like
|
||||
; this to a random selection of pickups/plants
|
||||
; to distribute the cpu load
|
||||
(define/augment (update)
|
||||
(define/augment (update t d)
|
||||
|
||||
(run-auto-pilot t d)
|
||||
|
||||
(for-each
|
||||
(lambda (pickup)
|
||||
(for-each
|
||||
(lambda (plant)
|
||||
(send plant check-pickup pickup))
|
||||
plants))
|
||||
(for-each
|
||||
(lambda (plant)
|
||||
(send plant check-pickup pickup))
|
||||
plants))
|
||||
pickups)
|
||||
|
||||
; remove the pickups that have been 'picked up'
|
||||
|
@ -554,9 +672,14 @@
|
|||
(not (send pickup picked-up?)))
|
||||
pickups))
|
||||
|
||||
(map
|
||||
(lambda (plant)
|
||||
(send plant update))
|
||||
plants))
|
||||
(append
|
||||
(map
|
||||
(lambda (plant)
|
||||
(send plant update t d))
|
||||
plants)
|
||||
(map
|
||||
(lambda (insect)
|
||||
(send insect update t d))
|
||||
insects)))
|
||||
|
||||
(super-new)))
|
||||
|
|
BIN
plant-eyes/meshes/butterfly.blend
Normal file
BIN
plant-eyes/meshes/butterfly.blend
Normal file
Binary file not shown.
103
plant-eyes/meshes/butterfly.obj
Normal file
103
plant-eyes/meshes/butterfly.obj
Normal file
|
@ -0,0 +1,103 @@
|
|||
# Blender3D v245 OBJ File: butterfly.blend
|
||||
# www.blender3d.org
|
||||
o butterfly_Mesh
|
||||
v 0.022483 0.000002 -0.790792
|
||||
v 0.286519 0.000002 -0.808224
|
||||
v 0.569586 0.000002 -0.813275
|
||||
v 1.053234 0.000002 -0.802641
|
||||
v 1.513902 0.000002 -0.768308
|
||||
v 1.995211 0.000002 -0.662639
|
||||
v 2.293338 0.000002 -0.513493
|
||||
v 2.242126 0.000002 -0.382030
|
||||
v 2.075995 0.000002 -0.176237
|
||||
v 1.843004 0.000002 -0.029013
|
||||
v 1.573859 0.000002 0.086073
|
||||
v 1.118858 0.000002 0.190916
|
||||
v 0.741962 0.000002 0.295921
|
||||
v 0.771135 0.000002 0.497448
|
||||
v 0.756951 0.000002 0.640671
|
||||
v 0.596358 0.000002 0.745205
|
||||
v 0.434684 0.000002 0.768079
|
||||
v 0.244420 0.000002 0.751611
|
||||
v 0.089934 0.000002 0.663155
|
||||
v 0.042516 0.000002 0.533723
|
||||
v 0.014988 0.000002 0.400845
|
||||
vt 0.455701 0.993275 0.0
|
||||
vt 0.243421 1.000000 0.0
|
||||
vt 0.119179 0.996805 0.0
|
||||
vt 0.119179 0.996805 0.0
|
||||
vt 0.003289 0.985782 0.0
|
||||
vt 0.455701 0.993275 0.0
|
||||
vt 0.455701 0.993275 0.0
|
||||
vt 0.003289 0.985782 0.0
|
||||
vt 0.689145 0.995001 0.0
|
||||
vt 0.837582 0.995001 0.0
|
||||
vt 0.003289 0.985782 0.0
|
||||
vt 0.011719 0.552540 0.0
|
||||
vt 1.001961 0.943805 0.0
|
||||
vt 0.837582 0.995001 0.0
|
||||
vt 0.011719 0.552540 0.0
|
||||
vt 1.000000 0.810426 0.0
|
||||
vt 1.001961 0.943805 0.0
|
||||
vt 0.011719 0.552540 0.0
|
||||
vt 1.004866 0.699950 0.0
|
||||
vt 1.000000 0.810426 0.0
|
||||
vt 0.011719 0.552540 0.0
|
||||
vt 1.002261 0.585438 0.0
|
||||
vt 1.004866 0.699950 0.0
|
||||
vt 0.011719 0.552540 0.0
|
||||
vt 1.001561 0.484525 0.0
|
||||
vt 1.002261 0.585438 0.0
|
||||
vt 0.011719 0.552540 0.0
|
||||
vt 0.996710 0.400030 0.0
|
||||
vt 1.001561 0.414213 0.0
|
||||
vt 0.972656 0.439259 0.0
|
||||
vt 0.988410 0.279043 0.0
|
||||
vt 0.996710 0.400030 0.0
|
||||
vt 0.964844 0.361134 0.0
|
||||
vt 0.998766 0.161859 0.0
|
||||
vt 0.992316 0.173574 0.0
|
||||
vt 0.937500 0.251759 0.0
|
||||
vt 0.777196 0.206295 0.0
|
||||
vt 0.600329 0.755609 0.0
|
||||
vt 0.015625 0.501759 0.0
|
||||
vt 0.777196 0.206295 0.0
|
||||
vt 0.007812 0.540821 0.0
|
||||
vt 0.008176 0.464606 0.0
|
||||
vt 0.657689 0.072756 0.0
|
||||
vt 0.777196 0.206295 0.0
|
||||
vt 0.008176 0.464606 0.0
|
||||
vt 0.657689 0.072756 0.0
|
||||
vt 0.008176 0.464606 0.0
|
||||
vt 0.028988 0.304632 0.0
|
||||
vt 0.505172 0.010559 0.0
|
||||
vt 0.657689 0.072756 0.0
|
||||
vt 0.025082 0.304632 0.0
|
||||
vt 0.505172 0.010559 0.0
|
||||
vt 0.021176 0.304632 0.0
|
||||
vt 0.030388 0.026039 0.0
|
||||
vt 0.438117 0.003906 0.0
|
||||
vt 0.665328 0.002746 0.0
|
||||
vt 0.100701 0.010414 0.0
|
||||
vn 0.000000 1.000000 -0.000000
|
||||
usemtl None_butterfly.png
|
||||
s off
|
||||
f 4/1/1 3/2/1 2/3/1
|
||||
f 2/4/1 1/5/1 4/6/1
|
||||
f 4/7/1 1/8/1 5/9/1
|
||||
f 5/10/1 1/11/1 21/12/1
|
||||
f 6/13/1 5/14/1 21/15/1
|
||||
f 7/16/1 6/17/1 21/18/1
|
||||
f 8/19/1 7/20/1 21/21/1
|
||||
f 9/22/1 8/23/1 21/24/1
|
||||
f 10/25/1 9/26/1 21/27/1
|
||||
f 11/28/1 10/29/1 21/30/1
|
||||
f 12/31/1 11/32/1 21/33/1
|
||||
f 13/34/1 12/35/1 21/36/1
|
||||
f 14/37/1 13/38/1 21/39/1
|
||||
f 14/40/1 21/41/1 20/42/1
|
||||
f 15/43/1 14/44/1 20/45/1
|
||||
f 15/46/1 20/47/1 19/48/1
|
||||
f 16/49/1 15/50/1 19/51/1
|
||||
f 16/52/1 19/53/1 18/54/1
|
||||
f 17/55/1 16/56/1 18/57/1
|
69
plant-eyes/meshes/butterfly.svg
Normal file
69
plant-eyes/meshes/butterfly.svg
Normal file
|
@ -0,0 +1,69 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.46"
|
||||
sodipodi:docname="butterfly.svg"
|
||||
inkscape:output_extension="org.inkscape.output.svg.inkscape">
|
||||
<defs
|
||||
id="defs4">
|
||||
<inkscape:perspective
|
||||
sodipodi:type="inkscape:persp3d"
|
||||
inkscape:vp_x="0 : 526.18109 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_z="744.09448 : 526.18109 : 1"
|
||||
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
|
||||
id="perspective10" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
gridtolerance="10000"
|
||||
guidetolerance="10"
|
||||
objecttolerance="10"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.7"
|
||||
inkscape:cx="375"
|
||||
inkscape:cy="520"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="645"
|
||||
inkscape:window-height="717"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 235.71428,273.79076 C 254.90915,270.64427 315.96816,269.50504 340,269.50504 C 421.01141,269.11452 444.82891,272.44383 520,278.07647 C 575.79111,290.85363 659.33671,302.82084 668.57143,326.64789 C 671.77064,334.64592 653.15086,364.04446 627.14286,390.93361 C 594.26,410.92531 573.50029,429.10984 531.42857,440.93361 C 482.10711,455.49717 402.32808,466.32873 372.85715,480.93361 C 374.52787,514.27008 385.06319,528.12923 375.71428,546.64789 C 355.38533,569.88117 334.88967,568.45444 314.28571,570.93362 C 292.75817,575.1478 261.00591,565.01549 248.57143,550.93361 C 238.33599,532.98879 239.46617,519.75441 234.28571,500.93361"
|
||||
id="path2383"
|
||||
sodipodi:nodetypes="ccccccccccc" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -44,6 +44,7 @@
|
|||
|
||||
(clear)
|
||||
(clear-shader-cache)
|
||||
(clear-texture-cache)
|
||||
|
||||
(define mode 'gui)
|
||||
(define gui (make-object gui-game-mode% (list-ref world-list 0)))
|
||||
|
@ -60,7 +61,7 @@
|
|||
(cond
|
||||
((eq? mode 'gui)
|
||||
(when (send gui update (flxtime) (delta))
|
||||
(send game setup (send gui get-player-info))
|
||||
(send game setup (send gui get-player-info) (send gui get-players))
|
||||
(set! mode 'game)))
|
||||
((eq? mode 'game)
|
||||
(send game update (flxtime) (delta))))
|
||||
|
|
BIN
plant-eyes/textures/butterfly.png
Normal file
BIN
plant-eyes/textures/butterfly.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
BIN
plant-eyes/textures/ribbon-twig.png
Normal file
BIN
plant-eyes/textures/ribbon-twig.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
Before Width: | Height: | Size: 398 KiB After Width: | Height: | Size: 88 KiB |
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue