Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //--------------------------------------------------------------------||
- //Default_System_ItemScript.txt//-------------------------------------||
- //--------------------------------------------------------------------||
- let dirCurrent = GetCurrentScriptDirectory();
- @Initialize
- {
- SetDefaultBonusItemEnable(false);
- LoadItemData(dirCurrent ~ "ItemData.txt")
- }
- task GetItemSE{
- let obj = ObjSound_Create;
- ObjSound_Load(obj,dirCurrent ~ "se/seItem.wav");
- ObjSound_SetVolumeRate(obj, 70);
- ObjSound_SetSoundDivision(obj, SOUND_SE);
- ObjSound_Play(obj);
- }
- @MainLoop{
- yield;
- }
- @Event
- {
- alternative(GetEventType())
- case(EV_GET_ITEM)
- {
- let itemType = GetEventArgument(0);
- let objItem = GetEventArgument(1);
- GetItemSE;
- }
- case(EV_DELETE_SHOT_TO_ITEM)
- {
- let objShot = GetEventArgument(0);
- let objPos = GetEventArgument(1);
- TUserItem(objPos[0], objPos[1]);
- bulletwait(objShot);
- }
- case(EV_END_BOSS_STEP)
- {waitend;}
- }
- task TUserItem(itemX,itemY)
- {
- let obj = CreateItemU1(2, itemX, itemY, 2);
- ObjMove_SetPosition(obj, itemX, itemY);
- ObjItem_SetRenderScoreEnable(obj,false);
- loop(60){yield;}
- ObjItem_SetDefinedMovePatternA1(obj, ITEM_MOVE_TOPLAYER);
- }
- task waitend{
- let endwait = 0;
- loop{
- endwait++;
- if(endwait==120){CloseScript(GetOwnScriptID());}
- yield;
- }}
- //||---------------------------------------------------------------------------------------------------------||
- //||--||Task which creates a deletion effect when bullets are deleted.||-------------------------------------||
- task bulletwait(ID){
- deletioneff(ObjMove_GetX( ID ),ObjMove_GetY( ID ),GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_RECT)[2]-GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_RECT)[0],GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_DELAY_COLOR)[0],GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_DELAY_COLOR)[1],GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_DELAY_COLOR)[2]);
- deletioneff2(ObjMove_GetX( ID ),ObjMove_GetY( ID ),GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_RECT)[2]-GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_RECT)[0],GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_DELAY_COLOR)[0],GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_DELAY_COLOR)[1],GetShotDataInfoA1( ObjShot_GetImageID(ID) ,TARGET_ENEMY,INFO_DELAY_COLOR)[2]);
- }
- //||---------------------------------------------------------------------------------------------------------||
- //||--||Task which creates the deletion effect.||------------------------------------------------------------||
- task deletioneff(X,Y,scale,color1,color2,color3){
- let dobj = ObjPrim_Create(OBJ_SPRITE_2D);
- let dimg = GetCurrentScriptDirectory ~ "img/effbreak.png";
- let danim = -1;
- LoadTexture(dimg);
- ObjPrim_SetTexture(dobj,dimg);
- ObjSprite2D_SetDestCenter(dobj);
- ObjSprite2D_SetDestRect(dobj,-scale/1.5,-scale/1.5,scale/1.5,scale/1.5);
- ObjRender_SetPosition(dobj,X,Y,0);
- Obj_SetRenderPriorityI(dobj,20);
- ObjRender_SetBlendType(dobj,BLEND_ADD_ARGB);
- ObjRender_SetColor(dobj,color1,color2,color3);
- while(!Obj_IsDeleted(dobj)){
- danim++;
- ascent(i in 0..4){
- if(danim==(i*3)){
- ObjSprite2D_SetSourceRect(dobj,i*64,0,64+i*64,64);
- }}
- ascent(i in 0..4){
- if(danim==(12+i*3)){
- ObjSprite2D_SetSourceRect(dobj,i*64,64,64+i*64,128);
- }}
- if(danim==24){Obj_Delete(dobj);}
- yield;
- }}
- //||---------------------------------------------------------------------------------------------------------||
- //||--||Task which creates the deletion effect (part 2).||---------------------------------------------------||
- task deletioneff2(X,Y,scale,color1,color2,color3){
- let dobj = ObjPrim_Create(OBJ_SPRITE_2D);
- let dimg = GetCurrentScriptDirectory ~ "img/effglow.png";
- let dalpha=255;
- let dsize=0;
- LoadTexture(dimg);
- ObjPrim_SetTexture(dobj,dimg);
- ObjSprite2D_SetDestCenter(dobj);
- ObjSprite2D_SetDestRect(dobj,-scale/1.5,-scale/1.5,scale/1.5,scale/1.5);
- ObjRender_SetPosition(dobj,X,Y,0);
- Obj_SetRenderPriorityI(dobj,20);
- ObjRender_SetBlendType(dobj,BLEND_ADD_ARGB);
- ObjRender_SetColor(dobj,color1,color2,color3);
- ObjSprite2D_SetSourceRect(dobj,0,0,256,256);
- while(!Obj_IsDeleted(dobj)){
- dalpha-=20;
- dsize+=0.2;
- ObjRender_SetScaleXYZ(dobj,dsize,dsize,dsize);
- ObjRender_SetAlpha(dobj,dalpha);
- if(dalpha<=0){Obj_Delete(dobj);}
- yield;
- }}
- //--------------------------------------------------------------------||
- //ItemData.txt//------------------------------------------------------||
- //--------------------------------------------------------------------||
- #UserItemData
- item_image = "./img/Item.png"
- ItemData{
- id = 1
- rect = ( 209, 1, 222, 14 )
- render = ALPHA
- }
- ItemData{
- id = 2
- type = 2
- rect = ( 210, 34, 221, 45 )
- render = ADD
- }
Advertisement
Add Comment
Please, Sign In to add comment