Search content:

 

Personal Menu
Username:
Password:
Save password

Become a member

Forgot Password?

 

Don't miss these
Cast Control
Change the LineSize of a Shape Cast Member
Mac Disk
Swap Language Cast Libraries
Linear Path Tracker
Install font
The Director Podcast
castLib.saveAndCompact() from Lingo
DOMAJ Site and Forum
Arca Database Xtra
MediaMacros Xtras Mall
 

 

 

Behavior SM sprite scroll

Added on 4/15/2000

 

Compatibilities:
behavior D7 D8 Mac PC Shockwave

This item has not yet been rated

Author: BrentMoseley

Part 1/3 of the Scrolling menu set. You must use this behavior in conjunction with the "SCROLL CONTROL" behavior. Attach this to the sprites that you want to scroll. Set "starting speed" and "starting accel" all other parameters are set with the "SCROLL CONTROL" behavior.

--Sprite Scroll part 1/3 of the Scroll Menu set.
--Created by Brent Moseley April 2000
--brent099@xoommail.com


property mysprite
property moveinc
property movechange
property maxspeed
property oldmax
property startmax
property startaccel

on beginsprite me
  mysprite = the spritenum of me
  movechange = startaccel
  maxspeed = startmax
  moveinc = 0
end


on prepareframe me
  
  if the loch of sprite mysprite > the width of the rect of the stage + 150 then  --RIGHT
    the loch of sprite mysprite = -150
  end if
  -- |
  -- | If the sprite goes off the screen then set it back on the other side
  -- |
  if the loch of sprite mysprite < -150 then
    the loch of sprite mysprite = the width of the rect of the stage + 150  --LEFT
  end if  
  
  
  -- if it"s moveing right.
  if movechange > 0 then  
    if moveinc < maxspeed then  -- if it"s going slower than target speed.
      moveinc = moveinc + movechange --accelerate
    else if moveinc > maxspeed then  -- if it"s going faster than target speed.
      moveinc = moveinc - movechange --decelerate
    end if
  end if
  
  -- if it"s moveing left.
  if movechange < 0 then  
    if moveinc > -maxspeed then     --|same as above.
      moveinc = moveinc + movechange--|
    else if moveinc < -maxspeed then--|
      moveinc = moveinc - movechange--|
    end if
  end if
  
  the loch of sprite mysprite = the loch of sprite mysprite + moveinc  --moves the sprite
end

--called by the "scroll control" behavior.
--sets the speed acceleration.
on setmoveinc me ,a ,b
  movechange = a --acceleration/deceleration speed
  maxspeed = b --maximum(target) speed
end


--called by the optional "scroll slow down" behavior.
--It slows the sprites down regardless of their direction.
on goslow me ,a
  oldmax = maxspeed
  
  if maxspeed > 0 then
    maxspeed = a
  else
    maxspeed = -a
  end if
end

--Sets the speed back to normal.
on gonormal me
  maxspeed = oldmax
end


on getBehaviorDescription
  return "Use this behavior in conjunction with the "SCROLL CONTROL" behavior" & RETURN & RETURN & ¬
"Attach this to the sprites that you want to scroll" & RETURN & ¬
"Set "starting speed" and "starting accel" all other parameters are set with the "SCROLL CONTROL" behavior"
end



on getPropertyDescriptionList me
  set pdlist to [:]
  addprop pdlist, #startmax, [#comment:"starting speed", #format:#integer, #default:3]
  addprop pdlist, #startaccel, [#comment:"starting acceleration", #format:#float, #default:.5, #range: [#min:-2, #max:2]]
  return pdlist
end getPropertyDescriptionList

 


Upload Provided by ABCUpload ASP

Contact

MMI
22 West Court Sq
Suite 2C
Newnan, GA 30263
USA

Fax - (206) 339-5833

Send e-mail