Simple walker

View previous topic View next topic Go down

Simple walker

Post by orrrrz on Fri Feb 01, 2013 11:46 pm

Arrow key:move
Z/X:engine

Code:

// [RCD]
Val
{
   ANGLE1(default=0, min=-30, max=30)
   ANGLE2_1(default=30, max=60)
   ANGLE2_1L(default=30, max=60)
   ANGLE2_1R(default=30, max=60)
   ANGLE2_2(default=30, max=60)
   ANGLE2_2L(default=30, max=60)
   ANGLE2_2R(default=30, max=60)
   COL1(default=#FF8000, disp=0)
   COL2(default=#C0C0C0, disp=0)
}
Key
{
}
Body
{
   Core(color=col1) {
      S:Chip(color=col1) {
         W:Rudder(angle=angle1, color=col2) {
            W:Weight(angle=angle2_1l, color=col1) { }
         }
         E:Rudder(angle=angle1, color=col2) {
            E:Weight(angle=angle2_2r, color=col1) { }
         }
         S:Chip(color=col1) {
            S:Chip(color=col1) {
               E:Rudder(angle=-angle1, color=col2) {
                  E:Weight(angle=angle2_1r, color=col1) { }
               }
               W:Rudder(angle=-angle1, color=col2) {
                  W:Weight(angle=angle2_2l, color=col1) { }
               }
               S:Chip(color=col1) {
                  S:Chip(color=col1) {
                     W:Rudder(angle=angle1, color=col2) {
                        W:Weight(angle=angle2_1l, color=col1) { }
                     }
                     E:Rudder(angle=angle1, color=col2) {
                        E:Weight(angle=angle2_2r, color=col1) { }
                     }
                     S:Chip(color=col1) { }
                  }
               }
            }
         }
      }
   }
}
Lua
{angle1=0
angle2_1=30
angle2_2=30
engine=0
function main()
--なるべく最初に記述
angle1=ANGLE1

out(0,"engine",engine)
engine=engine+_KEYDOWN(4)-_KEYDOWN(5)
engine=math.min(10,math.max(0,engine))

ANGLE1=30*math.sin(_TICKS()/10*engine)
if angle1<ANGLE1 then angle2_1=30 angle2_2=40
elseif angle1>ANGLE1 then angle2_1=40 angle2_2=30 end

if _KEY(0)==1 then ANGLE2_1R=angle2_1 ANGLE2_1L=angle2_1 ANGLE2_2R=angle2_2 ANGLE2_2L=angle2_2 end
if _KEY(1)==1 then ANGLE2_1R=angle2_2 ANGLE2_1L=angle2_2 ANGLE2_2R=angle2_1 ANGLE2_2L=angle2_1 end
if _KEY(2)==1 then ANGLE2_1R=angle2_1 ANGLE2_1L=angle2_2 ANGLE2_2R=angle2_2 ANGLE2_2L=angle2_1 end
if _KEY(3)==1 then ANGLE2_1R=angle2_2 ANGLE2_1L=angle2_1 ANGLE2_2R=angle2_1 ANGLE2_2L=angle2_2 end

end}


orrrrz
Tank
Tank

Posts : 55
Join date : 2012-06-19
Age : 22
Location : Tokyo

View user profile

Back to top Go down

Re: Simple walker

Post by jiri.hartvich.9 on Sun Feb 03, 2013 4:56 am

Nice. (it explodes! Smile )
avatar
jiri.hartvich.9
Tank
Tank

Posts : 51
Join date : 2012-08-29
Age : 18
Location : CZ

View user profile

Back to top Go down

View previous topic View next topic Back to top

- Similar topics

 
Permissions in this forum:
You cannot reply to topics in this forum