Inez wrote:What I need is a step-by-step list of basic instructions , together with a list of useful scripts (I am not a programmer, I'm an artist).
You are right, Rev is a general purpouse programming language/IDE. So having no programming knowledge can put a block on your project, until you have learned quite a few basics. Alternatively, did you consider teaming up with a programmer, or to outsource your programming need? There are rev coders that can easily do the coding stuff for you, if you are ready to pay a bit upfront and/or agree on revenue sharing.
Though it seems you do not really want to learn all this programmers stuff, here some hints regarding your specific tasks. If you're interested in learning rev programming, note that besides this forum, there's also a very busy mailing list, and for real time help, the chat i made (see signature).
Inez wrote:You need to be able to have animated gifs which play within hotspots; you need to use variables in order to programme the puzzles; you need to have conditional hotspots (i.e. a hotspot only becomes active when the relevant variables= 1 or 0); the ability to build "inventories"; and the ability to control what cursors appear over which hotspots.
Animated gifs are supported, but they do have several drawbacks, like lack of 8 bit transparency (no transparent colours), and a big hit on processing power. I suggest using several png images, and setting the icon of a button to those in predetermined intervals. Look up: icon, filename, import, send (using "in <time>")
variables are really bread and butter programmers things. Rev has several ways of passing data within itself, and storing it. to start out, i suggest concentrating on local and global variable declaration. basically you need to tell rev that a variable has to continue to exist beyond the current running handler. You can do this to put the line "global myVariableName" at any point of the script. Note that putting the line outside of a handler is also possible, and makes the declaration work for all handlers of the current script. look up: global, delete variable, local
for enabling or disabling stuff, again there's several methods. you could hide and show the relevant object, or use a conditional if-then-else structure. A simple example of such an if would be:
Code: Select all
global checkValidity
on mouseUp
if checkValidity is true then
go card "next step"
else
--you could just omit the else to do nothing, instead i warn the user here
answer "you have no reason to go there now"
end if
end mouseUp
inventories again from a programmers view are just stored in a variable. I suggest to seperate stuff with spaces, or with commas. that way you can use the "word" or "item" handling of rev to easily manage your inventory. however i guess you want to show the inventory items to the user. one way to do this would be to have a card with lots of buttons called "inventory" and then a number. here an example handler and how to make it work from a mouseUp:
Code: Select all
global myInventory
on mouseUp
showInventory
end mouseUp
on showInventory
--assuming each thing in the inventory is delimited with coma
-- for example: "8 foot pole,knive,lantern,crank,fuzzy fibres"
repeat with x = the number of buttons of card "inventory"
if the number of items in myInventory < x then
set the icon of button x of card "inventory" to the id of image (item x of myInventory) of card "allMyIventoryImages"
else
--no such inventory item, so if there was one previously you'd want to remove it
set the icon of button x of card "inventory" to 0 --zero
end if
end repeat
go card "inventory"
end showInventory
for changing the cursor on the fly, you'd need to use lock cursor, together with the messages for mouse position. Stuff to look up: mouseWithin, mouseEnter, mouseLeave, cursor, lockCursor