Hello Guest, please login or register.
Did you miss your activation email?
Login with username, password and session length.

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Atom

Pages: [1]
1
Coding / Request help: Dodongo snake
« on: January 13, 2013, 03:20:59 pm »
Simply put: I have two objects a head objects that has a random movement part in it and a body object that follows the head object, currently using the codes below, but it looks horrible. All suggestions are appriciated.  Its one of the last mini-bosses that are yet uncompleted, I can do 1 object bosses and 1 other 2 object boss without a problem, but this one with the following in it seems to be more then I can do alone.

<a href="http://www.youtube.com/watch?v=82O67egCpuI" target="_blank">http://www.youtube.com/watch?v=82O67egCpuI</a>

Code: [Select]
Information about object: objDodongo1Head
Sprite: sprDodongohead
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent:
Mask:

Create Event:

execute code:

if global.killed1Dmboss=1 {instance_destroy()}
HP=3
eating=0
swollen=0
image_speed=0
alarm[0]=10
alarm[2]=15

Alarm Event for alarm 0:

execute code:

if(!global.pause  ){
switch floor(random(4)){ //Pick a random number, make it an integer, and see what it is
case 0:
direction=360 //Right
image_index=2
break;
case 1:
direction=90 //Up
image_index=3
break;
case 2:
direction=180 //Left
image_index=0
break;
case 3:
direction=270 //Down
image_index=1
break;
}
//Set the speed
switch floor(random(2)){ //Pick a random number, make it an integer, and see what it is
case 0:
speed=0
break;
case 1:
speed=0.5
break;
}
//Reset the alarm
}
alarm[0]=55+random(20)


Alarm Event for alarm 1:

execute code:

image_alpha=1

Step Event:

execute code:

if !place_free(x+1,y) && ( direction=360 or direction = 0 ){speed=0; x=xprevious; y=yprevious}
if !place_free(x,y-1) && direction=90 {speed=0; x=xprevious; y=yprevious}
if !place_free(x-1,y) && direction=180 {speed=0; x=xprevious; y=yprevious}
if !place_free(x,y+1) && direction=270 {speed=0; x=xprevious; y=yprevious}
if(!global.pause){


if HP<=0{
   instance_change(objEDie,true)
}
}

End Step Event:

execute code:

vx = 0 //Set up some placeholders to save space
vw = 160
vy = 32
vh = 158

if (x< vx)
{
x=xprevious
y=yprevious
}

else if ((x+sprite_width) > vx+vw)
{
x=xprevious
y=yprevious
}

else if (y< vy)
{
x=xprevious
y=yprevious
}

else if ((y+sprite_height) > vh)
{
x=xprevious
y=yprevious
}



Code: [Select]
Information about object: objDodongo1body
Sprite: sprDodongobody
Solid: false
Visible: true
Depth: 1
Persistent: false
Parent:
Mask:

Create Event:

execute code:

if global.killed1Dmboss=1 {instance_destroy()}
activated=0
alarm[0]=2

Alarm Event for alarm 0:

execute code:

activated=1

Step Event:

execute code:

targetx=objDodongo1Head.x
targety=objDodongo1Head.y

if activated=1 && objDodongo1Head.speed=.5 && (objDodongo1Head.direction=360 or objDodongo1Head.direction=0)
{
x=targetx-15;y=targety-1;speed=.5
}

if activated=1 && objDodongo1Head.speed=.5 && objDodongo1Head.direction=90
{
x=targetx;y=targety+15;speed=.5
}

if activated=1 && objDodongo1Head.speed=.5 && objDodongo1Head.direction=180
{
x=targetx+15;y=targety-1;speed=.5
}

if activated=1 && objDodongo1Head.speed=.5 && objDodongo1Head.direction=270
{
x=targetx;y=targety-16;speed=.5
}

if activated=1 && objDodongo1Head.speed=0
{
move_towards_point(objDodongo1Head.x,objDodongo1Head.y,0.5)
}

if activated=1 && self.x=objDodongo1Head.x && self.y=objDodongo1Head.y
{
speed=0
activated=0
}

if activated=0 && objDodongo1Head.speed=0.5
{
alarm[0]=3
}


//direction=360 //Right
//direction=90 //Up
//direction=180 //Left
//direction=270 //Down

End Step Event:

execute code:

vx = 0 //Set up some placeholders to save space
vw = 160
vy = 32
vh = 158

if (x< vx)
{
x=xprevious
y=yprevious
}

else if ((x+sprite_width) > vx+vw)
{
x=xprevious
y=yprevious
}

else if (y< vy)
{
x=xprevious
y=yprevious
}

else if ((y+sprite_height) > vh)
{
x=xprevious
y=yprevious
}


2
Coding / .png or .bmp background loading from external source?
« on: March 16, 2012, 10:50:05 pm »
When I started on this project GameMaker did not yet have the function to load .png files as a background. ( yes that was along time ago ) Since then I created 400+ .bmp background files. ( 128 x 160 pixels )
For the dungeons I am using .png files as they make the total game download a lot less large.
Before I start saving all of those files to .png and change all the room creaton codes to load .png in place of .bmp I have one question. Does gamemaker actually work faster with .png or doesnt it matter that much. I'm talking about a lot of work when having to change everything so I prefer to be certain it it actually would improve things other then just the filesize of the total game external resources?

Code: [Select]
global.bg_background=background_add('Bgd_Overworld\lucht\lucht39.bmp', false, false,);
bg_background=global.bg_background

background_index[0]=bg_background;

3
Coding / Stalfos
« on: December 30, 2011, 09:30:06 pm »
So I've finished creating all of my basic enemies and have spend the last few weeks bug fixing and improving some AI. The original Stalfos I made did not have the jumping towards link's position ability so I've been working on a new stalfos.  Unfortunately I seem to have messed up my Stalfos codes. It goes in jump action, but except for the sprite change it doesnt work that well, most off the time the Stalfos doesn't even move.
For now its supposed to change sprite and then move towards the link object ( with changed sprite ) in a lineair movement, stopped by the mail solid (parent) object. ( making it look like it moves a bit up is something to work on after the code below is fixed. ) Its the last part of the enemie creation & debugging stage the game is in, so it would be nice if I could get help, finish it and move on to the next part of the project.

Code: [Select]
Information about object: obj_StalfosG
Sprite: sprStalfosG
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent: objHurt2
Mask:

Create Event:

execute code:

HP=3
stunned=0
jumping=0
jumpcountdown=0
image_speed=0
targetx=x
targety=y
alarm[0]=random(10)

Alarm Event for alarm 0:

execute code:

if(!global.pause && !stunned && !jumping){
switch floor(random(4)){ //Pick a random number, make it an integer, and see what it is
case 0:
direction=360 //Right
sprite_index=sprStalfosG
break;
case 1:
direction=90 //Up
sprite_index=sprStalfosG
break;
case 2:
direction=180 //Left
sprite_index=sprStalfosG
break;
case 3:
direction=270 //Down
sprite_index=sprStalfosG
break;
}
//Set the speed
switch floor(random(3)){ //Could also be zero, as sometimes the Stalfos stop.
case 0:
speed=1
break;
case 1:
speed=.75
break;
case 2:
speed=0
break;
//Reset the alarm
}}
alarm[0]=15+random(15)
if(stunned){
    stunned=0
}

Alarm Event for alarm 1:

execute code:

image_alpha=1

Alarm Event for alarm 2:

execute code:

image_blend=c_white

Alarm Event for alarm 3:

execute code:

//counting down till a new jump can happen
if jumpcountdown>0
{
jumpcountdown-=1
alarm[3]=1
}

Alarm Event for alarm 4:

execute code:

if(!global.pause){

mp_linear_step_object(obj_link.x,obj_link.y,distance_to_object(obj_link),objDense)
targetx=obj_link.x
targety=obj_link.y
sprite_index=sprStalfosGj
}

if(global.pause){ alarm[4]=10}

Step Event:

execute code:

if !place_free(x+1,y) && ( direction=360 or direction = 0 ){speed=0; x=xprevious; y=yprevious}
if !place_free(x,y-1) && direction=90 {speed=0; x=xprevious; y=yprevious}
if !place_free(x-1,y) && direction=180 {speed=0; x=xprevious; y=yprevious}
if !place_free(x,y+1) && direction=270 {speed=0; x=xprevious; y=yprevious}
if(!global.pause){

if(speed){
    image_speed=0.3
}
else{
    image_speed=0
}
if place_meeting(x,y,obj_link) && obj_link.usingshield{
    if global.facing="U"{
        sound_play(Bump)
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if global.facing="D"{
        sound_play(Bump)
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if global.facing="R"{
        sound_play(Bump)
        if(place_free(x-5,y)){
            x+=5
        }
    }
    if global.facing="L"{
        sound_play(Bump)
        if(place_free(x+5,y)){
            x-=5
        }
    }
}
if place_meeting(x,y,objFirerod) or place_meeting(x,y,objIcerod) or place_meeting(x,y,objMRod) && (image_alpha=1 or stunned )&& !jumping {
    sound_play(EHit)
    HP-=1
    image_alpha=0.75
    alarm[1]=10
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
}
if place_meeting(x,y,objFire) or place_meeting(x,y,objWind)or place_meeting(x,y,Arrow) or place_meeting(x,y,objfirer) or place_meeting(x,y,objHammer)or place_meeting(x,y,objSwordshoot) && (image_alpha=1 or stunned )&& !jumping {
    sound_play(EHit)
    HP-=2
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}
}
if place_meeting(x,y,Explosion) && (image_alpha=1 or stunned ){
    sound_play(EHit)
    HP-=3
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objicer) && !stunned && !jumping {
    sound_play(EHit)
    instance_create(self.x,self.y,objChink)
    stunned=1
    speed=0
    image_speed=0
    image_blend=c_blue-150
    alarm[0]=180
    alarm[2]=180
}

if place_meeting(x,y,objBoomerang) && global.boomerlvl=1 && !stunned && !jumping{
    sound_play(EHit)
    instance_create(self.x,self.y,objChink)
    stunned=1
    speed=0
    image_speed=0
    image_alpha=0.8
    alarm[0]=90
    alarm[1]=90
}

if place_meeting(x,y,objBoomerang) && global.boomerlvl=2 && !stunned && !jumping{
    sound_play(EHit)
    HP-=1
    instance_create(self.x,self.y,objChink)
    stunned=1
    speed=0
    image_speed=0
    image_alpha=0.7
    alarm[0]=120
    alarm[1]=120
}
if HP<=0{
   instance_change(objEDie,true)
}

execute code:

if !jumping{
if place_meeting(x,y,objSword) or place_meeting(x,y,objSwordCharge) && global.swordlvl=1 && (image_alpha=1 or stunned ){
    sound_play(EHit)
    HP-=1
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordSpin) && global.swordlvl=1 && (image_alpha=1 or stunned ){
    sound_play(EHit)
    HP-=2
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSword) && global.swordlvl=2 && (image_alpha=1 or stunned ){
    sound_play(EHit)
    HP-=2
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordSpin) && global.swordlvl=2 && (image_alpha=1 or stunned ){
    sound_play(EHit)
    HP-=4
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordCharge) && global.swordlvl=2 && (image_alpha=1 or stunned ){
    sound_play(EHit)
    HP-=3
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordCharge) && global.swordlvl=3 && (image_alpha=1 or stunned ){
    sound_play(EHit)
    HP-=5
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordSpin) && global.swordlvl=3 && (image_alpha=1 or stunned ){
    sound_play(EHit)
    HP-=7
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSword) && global.swordlvl=3 && (image_alpha=1 or stunned ){
    sound_play(EHit)
    HP-=4
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}
}

execute code:

if !stunned && jumping && image_alpha=1
{
   if direction=90 && place_meeting(x,y-1,objdeepwater) or place_meeting(x,y-1,objlava)or place_meeting(x,y-3,objHole)or place_meeting(x,y-1,objHole2){
       y+=2
       direction=270
            alarm[0]=10
            sprite_index=sprStalfosG
        }
   
    if direction=270 && place_meeting(x,y+1,objdeepwater)or place_meeting(x,y+1,objlava)or place_meeting(x,y+1,objHole)or place_meeting(x,y+1,objHole2) {
          y-=2
          alarm[0]=10
          direction=90
          sprite_index=sprStalfosG
        }
 
    if direction=360 or direction=0 && place_meeting(x+1,y,objdeepwater)or place_meeting(x+1,y,objlava)or place_meeting(x+1,y,objHole)or place_meeting(x+1,y,objHole2){
        x-=2
          alarm[0]=10
          direction=180
          sprite_index=sprStalfosG
        }
 
    if direction=180 && place_meeting(x-1,y,objdeepwater) or place_meeting(x-1,y,objlava)or place_meeting(x-1,y,objHole)or place_meeting(x-1,y,objHole2) {
       x+=2
            alarm[0]=10
            direction=360
            sprite_index=sprStalfosG
        }

}

execute code:

if stunned or image_alpha<=1 &&  !jumping
{
   if direction=90 && place_meeting(x,y-1,objdeepwater)or place_meeting(x,y-1,objlava) {
         x=other.x
        y=other.y 
          instance_change(objDrown,true)
        }
   
    if direction=270 && place_meeting(x,y+1,objdeepwater) or place_meeting(x,y+1,objlava) {
       x=other.x
        y=other.y 
        instance_change(objDrown,true)
        }
 
    if direction=360 or direction=0 && place_meeting(x+1,y,objdeepwater) or place_meeting(x+1,y,objlava){
      x=other.x
        y=other.y 
   instance_change(objDrown,true)
        }
 
    if direction=180 && place_meeting(x-1,y,objdeepwater) or place_meeting(x-1,y,objlava) {
       x=other.x
        y=other.y 
  instance_change(objDrown,true)
        }


       
       
        if direction=90 && place_meeting(x,y-3,objHole)or place_meeting(x,y-1,objHole2){
           x=other.x
        y=other.y 
        instance_change(objDrop,true)
        }
   
    if direction=270 && place_meeting(x,y+1,objHole)or place_meeting(x,y+1,objHole2) {
       x=other.x
        y=other.y 
           instance_change(objDrop,true)
        }
 
    if direction=360 or direction=0 && place_meeting(x+1,y,objHole)or place_meeting(x+1,y,objHole2){
       x=other.x
        y=other.y 
         instance_change(objDrop,true)
        }
 
    if direction=180 && place_meeting(x-1,y,objHole)or place_meeting(x-1,y,objHole2) {
       x=other.x
        y=other.y 
        instance_change(objDrop,true)
        }
}


 


   

execute code:

//initiate attack

if distance_to_object(obj_link)<33 && jumping=0 && jumpcountdown=0
{
jumping=1
alarm[4]=3
}

//switch from jump status to normal walking

if jumping=1 && x=targetx && y=targety
{
jumpcountdown=120
alarm[3]=1
jumping=0
alarm[0]=5
}

End Step Event:

execute code:

vx = 0 //Set up some placeholders to save space
vw = 160
vy = 32
vh = 158

if (x< vx)
{
x=xprevious
y=yprevious
}

else if ((x+sprite_width) > vx+vw)
{
x=xprevious
y=yprevious
}

else if (y< vy)
{
x=xprevious
y=yprevious
}

else if ((y+sprite_height) > vh)
{
x=xprevious
y=yprevious
}

Collision Event with object objMagic:

execute code:


    sound_play(EHit)
    HP-=2
    if direction=90{
        if(place_free(x,y+5)){
            y+=5
        }
    }
    if direction=270{
        if(place_free(x,y-5)){
            y-=5
        }
    }
    if direction=360 or direction=0{
        if(place_free(x-5,y)){
            x-=5
        }
    }
    if direction=180{
        if(place_free(x+5,y)){
            x+=5
        }
    }
    with other{instance_destroy()}



4
Coding / Wizzrobe
« on: November 12, 2011, 03:24:39 pm »
I'm almost done with the creation of the wizzrobe enemie for TLOZ:CR.
It can now appear, disappear, move to a different location, attack.



The only thing that is not in it yet is to check which direction it should face ( 0 (or 360 )-90-180-270 )
I want it to check where link is like in the shot below.
Depending on which sector link is in, the direction would be set.
anyone got a clue how to do this?


5
Coding / [Request] Zelda GB Gibdo example
« on: August 16, 2011, 04:34:07 pm »
Well, I guess the title of the topic already gives a good idea of my current problem.

 As I'm currently in the phase where I create all of the enemies except for bosses and sub-bosses I've managed to create a nice amount of enemies so far. Unfortunately I have to admit that I have no idea how to create the gibdo.

The moving around is not a problem, but I have no idea how to make it grab / release the object link ( for a set time or to release after a number of key presses ) Does anyone have an example of this function that I can study?

6
Coding / Can somone help fix this small bug in a zora
« on: June 28, 2011, 01:49:28 pm »
Hi,

Well, I'm still working on the creation of the enemies for TLOZ:CR, but I'm having a problem with the zora enemie type right now. It works as intended except for 1 thing. Unfortunately this is a rather important thing.
The zora enemie is set to have a small moment between disappearing and reappearing, but currently if you swim over it while its not visilbe, ( while not diving ) you still get hit.

Getting hit is set in the link object in a step event that says that if link collides with objHurt ( the parent of obj_zora ) link gets hurt. Can someone look at this?

Below is the information of obj_zora:

Code: [Select]
Information about object: obj_zora
Sprite: sprZora
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent: objHurt
Mask:

Create Event:

execute code:

alarm[0]=90
HP=3
stunned=0
image_index=0
image_speed=.1

Alarm Event for alarm 0:

execute code:

randoom=floor(random(8))
if randoom=0 && place_meeting(x+32,y,objdeepwater) && !place_meeting(x+32,y,obj_link)
{
x+=32
}
if randoom=1 && place_meeting(x-32,y,objdeepwater) && !place_meeting(x-32,y,obj_link)
{
x-=32
}
if randoom=2 && place_meeting(x,y+32,objdeepwater) && !place_meeting(x,y+32,obj_link)
{
y+=32
}
if randoom=3 && place_meeting(x,y-32,objdeepwater) && !place_meeting(x,y-32,obj_link)
{
y-=32
}
if randoom=4 && place_meeting(x+80,y,objdeepwater) && !place_meeting(x+80,y,obj_link)
{
x+=80
}
if randoom=5 && place_meeting(x-80,y,objdeepwater) && !place_meeting(x-80,y,obj_link)
{
x-=80
}
if randoom=6 && place_meeting(x,y+80,objdeepwater) && !place_meeting(x,y+80,obj_link)
{
y+=80
}
if randoom=7 && place_meeting(x,y-80,objdeepwater) && !place_meeting(x,y-80,obj_link)
{
y-=80
}
visible=true
image_index=0
alarm[0]=90

Step Event:

execute code:

if place_meeting(x,y,objSword) or place_meeting(x,y,objSwordCharge) && global.swordlvl=1 && image_alpha=1{
    sound_play(EHit)
    HP-=1
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordSpin) && global.swordlvl=1 && image_alpha=1{
    sound_play(EHit)
    HP-=2
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSword) && global.swordlvl=2 && image_alpha=1{
    sound_play(EHit)
    HP-=2
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordSpin) && global.swordlvl=2 && image_alpha=1{
    sound_play(EHit)
    HP-=4
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordCharge) && global.swordlvl=2 && image_alpha=1{
    sound_play(EHit)
    HP-=3
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordCharge) && global.swordlvl=3 && image_alpha=1{
    sound_play(EHit)
    HP-=5
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSwordSpin) && global.swordlvl=3 && image_alpha=1{
    sound_play(EHit)
    HP-=7
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}

if place_meeting(x,y,objSword) && global.swordlvl=3 && image_alpha=1{
    sound_play(EHit)
    HP-=4
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    image_alpha=0.75
   }

execute code:

if place_meeting(x,y,obj_link) && obj_link.usingshield{
    if global.facing="U"{
        sound_play(Bump)
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if global.facing="D"{
        sound_play(Bump)
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if global.facing="R"{
        sound_play(Bump)
        if(place_meeting(x-5,y,objdeepwater)){
            x+=5
        }
    }
    if global.facing="L"{
        sound_play(Bump)
        if(place_meeting(x+5,y,objdeepwater)){
            x-=5
        }
    }
}
if place_meeting(x,y,objFirerod) or place_meeting(x,y,objIcerod) or place_meeting(x,y,objMRod) && image_alpha=1{
    sound_play(EHit)
    HP-=1
    image_alpha=0.75
    alarm[1]=10
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
}
if place_meeting(x,y,objFire) or place_meeting(x,y,objWind)or place_meeting(x,y,Arrow) or place_meeting(x,y,objfirer) or place_meeting(x,y,objHammer)or place_meeting(x,y,objSwordshoot) && image_alpha=1{
    sound_play(EHit)
    HP-=2
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction =0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    image_alpha=0.75
    alarm[1]=10
}



if place_meeting(x,y,objicer) && !stunned{
    sound_play(EHit)
    instance_create(self.x,self.y,objChink)
    stunned=1
    speed=0
    image_speed=0
    image_blend=c_blue-150
    alarm[0]=180
    alarm[2]=180
}

if place_meeting(x,y,objBoomerang) && global.boomerlvl=1 && !stunned{
    sound_play(EHit)
    instance_create(self.x,self.y,objChink)
    stunned=1
    speed=0
    image_speed=0
    image_alpha=0.8
    alarm[0]=90
    alarm[1]=90
}

if place_meeting(x,y,objBoomerang) && global.boomerlvl=2 && !stunned{
    sound_play(EHit)
    HP-=1
    instance_create(self.x,self.y,objChink)
    stunned=1
    speed=0
    image_speed=0
    image_alpha=0.7
    alarm[0]=120
    alarm[1]=120
}
if HP<=0{
   instance_change(objEDie,true)
}

execute code:

if image_index=3{
instance_create(x,y,obj_zorashot)
}

End Step Event:

execute code:

vx = 0
vw = 160
vy = 32
vh = 158

if (x< vx)
{
x=xprevious
y=yprevious
}

else if ((x+sprite_width) > vx+vw)
{
x=xprevious
y=yprevious
}

else if (y< vy)
{
x=xprevious
y=yprevious
}

else if ((y+sprite_height) > vy+vh)
{
x=xprevious
y=yprevious
}

Collision Event with object objMagic:

execute code:


    sound_play(EHit)
    HP-=2
    if direction=90{
        if(place_meeting(x,y+5,objdeepwater)){
            y+=5
        }
    }
    if direction=270{
        if(place_meeting(x,y-5,objdeepwater)){
            y-=5
        }
    }
    if direction=360 or direction=0{
        if(place_meeting(x-5,y,objdeepwater)){
            x-=5
        }
    }
    if direction=180{
        if(place_meeting(x+5,y,objdeepwater)){
            x+=5
        }
    }
    with other{instance_destroy()}


Other Event: Animation End:

execute code:

visible=false





7
Discussion / converting GM 6.1 to GM 8 ?
« on: November 07, 2010, 07:08:39 pm »
I'm currently using GM 6.1.
If I am correct that does mean that a .exe created with this version will not work in vista or windows 7 and that using GM 8 would solve this. But as the engine has been done for a great part, I am wondering how much work it would be converting it.

Is there someone who has a list regarding the changes of the build in functions and variables between GM 6.1 and GM8 ?
I would prefer knowing what has changed so that I can see how much work converting will be, before I actually decide to start converting the engine of TLOZ:CR.

8
Zelda Projects / TLOZ: Chaos Rising
« on: October 17, 2010, 01:10:27 pm »
What does this game not include: you do not have to go rescue princess Zelda or have to fight Ganon.

____________________________________________________________________________________________________________

Its hundreds of years after any known legend of the land of Hyrule.
Heroes and Villains have come and gone and for a long time nothing really changed in the land of Hyrule.
However at a certain point in time a great evil came to Hyrule. The hero of that era fought till the bitter end, but in the end he was defeated. Hunger, plagues and destruction flooded the land.

But even the reign of this evil had to come to an end.
A force stronger and different from any seen before appeared not only in Hyrule itself, but also in all other known lands.

As the Triforce had weakened from granting all contradictive wishes, its function as the goddesses seal was no longer as strong as it was meant to be. Allowing the forces of Chaos to return to what once was their realm.

This started what would become known as the second great war.  At the end of this war a hero emerged.
And together with seven powerful warriors they managed to banish the Chaos Forces back to where they came from.
However at great cost.

The Triforce of power had weakened the most and had fallen to the corrupting powers of Chaos.
With the imprisoning of Chaos, the Triforce of power had also been lost forever.

With their last power, the Triforce of Wisdom and the Triforce of Courage brought together the remainders of the world.
And so the world split in the following worlds: air, rock, water and forest. After this the Triforce pieces were never seen again.

Hundres of years later most of history has been lost and what is known sounds more as stories then real history.
The search for the truth ( and a much more important quest ) are about to begin.

____________________________________________________________________________________________________________

What has been done till now:

overworld design
story design
character movement
Hud
weapon usage
weapon menu
save/loading
room2room engine ( no special transition though )
text engine
.....and many other things.....

____________________________________________________________________________________________________________

other currently not that important info:

using item 1: Z
using item 2: X
open the menu window: Enter
switch between menu windows: Space
movement: arrow keys
opening the save game menu: Esc
while swimming use Z to dive

____________________________________________________________________________________________________________

As this was one of the first projects to enter this wip project zone and it already had a forum topic it is not directly linked, pleas use the link below to find the latest news and updates.

http://www.zfgc.com/forum/index.php?topic=37003.msg414590#msg414590

Click here to view on the site.

9
Zelda Projects / [Game] TLOZ: Chaos Rising
« on: September 28, 2010, 06:40:47 pm »
After all these years the time has finally come: TLOZ Chaos Rising has been completed.


The Legend of Zelda: Chaos Rising





The Story


This game does not start where one of the existing games end, it takes place a great time after any known time of Hyrule. Its story is like none before. Its not about good and evil, not about who will rule. This time you have to save existence itself.

Ages ago the Triforce weakened from granting all contradictive wishes, a golden world, a dark world, to rule over all, to rule for all. This weakened the triforces main function.
A function unknown to the Hylians and other races. The Triforce was not only there to grant the wishes of those that touched it or to counsel them in difficult times.
It had to protect the creation of the goddesses from that what had been before, the Chaos inside.

It twisted the lands and the minds of great man. War came not only to Hyrule but also to other regions. At the end of this war a hero emerged, but this time he did not fight alone. Together with seven powerful warriors they managed to banish the Chaos Forces back to where they came from. However at great cost.
The world was dying and the Triforce of Power missing after it had granted one last wish to reshape the world.
Now a great many ages later the new seal that was meant to protect the new worlds for as long as possible is about to fail.



The Worlds


Air
Existing out of some islands floating in an endless air environment the Air World is the home of those of the Hylian race that survived. They founded a small village on one of the southern islands.

Rock
One of the Worlds was made out of the mountains and the core of the old world. A place of both great heat is the home of both the Goron and the Subrosian tribes.

Water
Out of the Oceans and a few isles the aquatic world was born. Home to several kinds of creatures, including Zora's and Fairies.

Forest
In the image of the Sacred Forest a new world was created , home to the animal kingdom.

Sacred Realm
Created from the Temple of Seasons after the seasons were undone by chaos and the remainders of the old Sacred Realm the core of the combined worlds was formed. Allowing Travel to all other worlds a small trading outpost was build. Unfortunately the connection to the other wolds was lost in time.



In-game screenshots:







Trailers:


<a href="http://www.youtube.com/watch?v=DuR8CVnfKRM" target="_blank">http://www.youtube.com/watch?v=DuR8CVnfKRM</a><a href="http://www.youtube.com/watch?v=CDpqsgf7Yh0" target="_blank">http://www.youtube.com/watch?v=CDpqsgf7Yh0</a><a href="http://www.youtube.com/watch?v=iUKfVLtpBtU" target="_blank">http://www.youtube.com/watch?v=iUKfVLtpBtU</a>



Demo


The Demo from NCFC 2013 is available at:
 http://www.mediafire.com/download/eysqhn9m218m5hi/TLOZ%2520Chaos%2520Rising%2520Demo.rar



Download the game


And not to forget, a link to the full game:
http://www.mediafire.com/download/urmgkj9sj17g955/TLOZ_-_Chaos_Rising.rar
There are 2 .exe's in this file: One with all the room transitions active and one with less room transitions for pc's having trouble with the normal version.

Version 1.1. https://www.mediafire.com/?ku9ifuz1oc08u27 ( solves the bomb issue crashing the game)

Download the maps


To be considered a major spoiler, but available to those whom have a problem with playing a zelda game without a map.
There are 2 different versions: one with the full completed maps and one that shows the zones, but where the rooms are blanc. You can use it to draw your own map.

http://www.mediafire.com/download/8txg7gfxv1r99aw/Draw_your_own_maps_Map_Pack.rar

http://www.mediafire.com/download/1iagmn795sgch4j/Completed_Map_Pack.rar


Game Controls:


movement: arrow keys
using item 1: Z
using item 2: X
open the menu window: Enter
switch between menu windows: Space
opening the save game menu: Esc
while swimming use Z to dive
while in a dungeon Shift can be used to hide the keys
usage of numpad 1 - 2 -3 scales the rooms from 100% - 150% - 200% of standard game scale.
use R to reset a room when link is stuck ( does not reset health / items )
use T to make a screenshot and save it into the screenshot directory



Credits


AtomicD1: gamedesign / programming / storyline / alpha-testing
Hawky: beta-testing
GoodNight: for the walking engine for Link
Nintendo: for the original Zelda Series, the sounds, original music and original Zelda sprites used.
Zelda Orchestrated: for several of the background music pieces used

No Copyright infringement has been intented.
All sprites / names / music from the Legend of Zelda Series are property of Nintendo.
Howevert the story, mapdesign and the game-engine for this fan-game do belong to the creator of this fangame.
This project is a fan-project and has never been / will never be about making profit.



One last note:

Please use the spoiler function when posting something about the content of this game.
Lets give everyone a chance to discover things on their own.

10
Coding / Req GB name registration engine debugging
« on: September 10, 2008, 03:52:38 pm »
I remember to have seen an gb name registration engine with save & load options.
Not that gb one with the oot graphics, but actually one with the gb graphics.
Does anyone still have that one? It would speed up my progress, if not, I will have to recreate it and that will take some time.

( As having a full-time job and following a jobrelated study to keep up to date, I already am progressing very slowly. )

One other question, what works best:
1. using link sprites with shield and an invisible object for collisions with the shield
2. using normal link sprites and a visble shield object

11
Coding / [Request] Help with Room 2 room
« on: August 09, 2008, 04:07:57 pm »
I was wondering, we always see engines using several objects for moving between rooms. Some engine even have an object for each different transition. Now I was not planning to use such an amount of objects. I have a very clear idea to do it with 1 object, unfortunatley I don't exactly know how to do it. 
In the next part I will try to explain what I would like to accomplish:

Lets take a random amount of rooms like 30, arranged in 5 rows of 6 rooms.
Each room has the same size.
Each room is named with a number in the end counting from left to right.

The room transition object checks if the player object is :

for moving right a room: between the correct y values and past a certain x value
for moving left a room: between the correct y values and for a certain x value
for moving up a room: between the correct x values and below a certain y value
for moving down a room: between the correct x values and above a certain y value

If the player objects gets at one of those positons the transiton object:

for right: counts up 1 value
for left: counts down 1 value
for up: counts down 6 values
for down: counts up 6 values

Then it moves you the the room corresponding with the just newly calculated value.

How am I to code such an engine? If possible I would like to see a detailed explanation.
Does not have to be an engine, but an example would be appriciated.

12
Coding / Can this be done in GM 6, if so, how?
« on: June 28, 2008, 09:06:30 pm »
I would like to give those who will some day be able to play a game created by me to have the ability to resize the screen size during gameplay.

In gamemaker 5.3A one could use the following script in a key press event.

Code: [Select]
if scale_full=100 scale_full=150
else if scale_full=150 scale_full=200
else if scale_full=200 scale_full=250
else if scale_full=250 scale_full=300
else scale_full=100


But the scale_full function was removed in the gamemaker 6 version. Is there a way to recreate this function?

13
Discussion / Req: Image Splitter
« on: June 22, 2008, 02:24:17 pm »
As I'm slowly making progress its time for the next phase. And that is where I have found as small setback.
I have an overworld in a .png format that contains 448 rooms.
They are put in as fowllowing: 28 horizontal, 16 vertical. between the rooms is a 2 pixel border, the border of the map contains 1 pixel at each side. Now I was planning to use a splitting program that I found a long time ago to split this up in to the separate rooms and save them as separate files. The problem is, the program can't handle image parts of this size.
By now I have tried at least 10 other programs, but they also have their problems:
1. they crash the PC
2. they can't handle the .png format.
3. they can't save the images as separate files
4. they can't handle the empty spaces between rooms and around the map

Does anyone have a program that is capable of doing as I want it to be done or am I to separate them myself and spend a lot of hours doing so?

14
LTTP & FSA / [Solved] ALTTP Seashells
« on: May 30, 2007, 06:06:41 pm »
Does anyone have custom created alttp styled seashells?
I could use a few different seashells to fill up a beach that I'm currently working on for tloz:ae

15
Coding / Zelda GM5.3 created LTTP styled engine
« on: March 17, 2007, 06:23:49 pm »
As Chaos Rising, the second game in a zelda game serie I am working on will stop using (the improved version of) this engine I am offering for download.
The legend of Zelda: Chaos Rising will get a new engine in gb style with changed menu's and some different items and less bugs.

This file that I offer as a download is a 2.5 years old version of my engine, stripped from several parts that would spoil things about the game for those who will one day be able to play it.

http://files.filefront.com/Chaos_Rising_EngineDisconnzip/;6956768;;/fileinfo.html

Parts of this engine have been created with help of others, as it is a rather old engine I do not have an idea who to credit.
Before one can really use it to create a game with, it will need debugging and perhaps a conversion to a more recent version of gamemaker.

Pages: [1]

Contact Us | Legal | Advertise Here
2013 © ZFGC, All Rights Reserved



Page created in 0.187 seconds with 34 queries.