Skip to content
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Donate
Collapse

Plutonium

  1. Home
  2. BO2 Modding Support & Discussion
  3. [Support] Move Slide Care Package to new Position?

[Support] Move Slide Care Package to new Position?

Scheduled Pinned Locked Moved BO2 Modding Support & Discussion
22 Posts 8 Posters 727 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Rynoxarundefined Offline
    Rynoxarundefined Offline
    Rynoxar Contributor
    wrote on last edited by Mr. Android
    #1

    How I can move my Slide Care Package to a new Position or delete the old Slide and Create a new one. So no one can abuse the Create Slide command?

    Radonundefined 1 Reply Last reply
    0
    • Sassundefined Offline
      Sassundefined Offline
      Sass Plutonium Staff
      wrote on last edited by
      #2

      There's no universal way to do this. It entirely depends of how your "slides" are scripted in the first place.

      Rynoxarundefined 1 Reply Last reply
      0
      • Rynoxarundefined Offline
        Rynoxarundefined Offline
        Rynoxar Contributor
        replied to Sass on last edited by
        #3

        Sass said in Move Slide Care Package to new Position?:

        There's no universal way to do this. It entirely depends of how your "slides" are scripted in the first place.

        self add_option("SubM2", "Create Slide", ::createSlide);
        
        createSlide()
        {
        self thread Slide(bullettrace(self gettagorigin("j_head"), self gettagorigin("j_head")+anglesToForward(selfgetplayerangles()) * 1000000, 0, self)["position"] + (0,0,20), self getPlayerAngles());
        }
        
        Slide( slidePosition, slideAngles ) 
        {
        	level endon( "game_ended" );
        	level.slide[level.numberOfSlides] = spawn("script_model", slidePosition);
        	level.slide[level.numberOfSlides].angles = (0,slideAngles[1]-90,60);
        	level.slide[level.numberOfSlides] setModel("t6_wpn_supply_drop_trap");
        	level.numberOfSlides++;
        
        	for(;;)
        	{
        		foreach(player in level.players)
        		{
        if( player isInPos(slidePosition) && player meleeButtonPressed() && player isMeleeing() && length( vecXY(playergetPlayerAngles() - slideAngles) ) < 85 )
        			{
        				player setOrigin( player getOrigin() + (0, 0, 10) );
        				playngles2 = anglesToForward(player getPlayerAngles());
        				x=0;
        				player setVelocity( player getVelocity() + (playngles2[0]*1000, playngles2[1]*1000, 0) );
        				while(x<15) 
        				{
        					player setVelocity( self getVelocity() + (0, 0, 25) );
        					x++;
        					wait .01;
        				}
        				wait 1;
        			}
        		}
        	wait .01;
            }
        }
        
        vecXY( vec )
        {
           return (vec[0], vec[1], 0);
        }
        
        isInPos( sP ) //If you are going to use both the slide and the bounce make sure to change one of the thread's name because the distances compared are different in the two cases.
        {
        	if(distance( self.origin, sP ) < 100)
        		return true;
        	return false;
        }
        
        1 Reply Last reply
        0
        • Sassundefined Offline
          Sassundefined Offline
          Sass Plutonium Staff
          wrote on last edited by Sass
          #4

          I see no easy way to change the slide's position without redoing the entire script honestly. The way this is set up is that anyone can spawn as many slides as they want. Also slides should be tied to players instead of "level", that way everyone can get their own slide that they can spawn and move/delete. This can be improved and revamped in many many ways.

          I personally could do it, but my role as a Staff member isn't to provide every user with proper custom scripts based on what they need and what they already found. Maybe in the future I'll make a post with "better" scripts for everyone to use.

          Rynoxarundefined 1 Reply Last reply
          0
          • Rynoxarundefined Offline
            Rynoxarundefined Offline
            Rynoxar Contributor
            replied to Sass on last edited by
            #5

            Sass🤕 PLEASSSSSSE 😳 😇

            Ducxyundefined 1 Reply Last reply
            0
            • Ducxyundefined Offline
              Ducxyundefined Offline
              Ducxy
              replied to Rynoxar on last edited by
              #6

              @NOXSYS make it to where players can only get 2 or 3 slides

              Soccer1978undefined 1 Reply Last reply
              0
              • Soccer1978undefined Offline
                Soccer1978undefined Offline
                Soccer1978
                replied to Ducxy on last edited by
                #7

                Ducxy how? and is there a code for deleting them for in the mod menu

                Rynoxarundefined Ducxyundefined 2 Replies Last reply
                0
                • Rynoxarundefined Offline
                  Rynoxarundefined Offline
                  Rynoxar Contributor
                  replied to Soccer1978 on last edited by
                  #8

                  Soccer1978 said in Move Slide Care Package to new Position?:

                  Ducxy how? and is there a code for deleting them for in the mod menu

                  yeah dont know how 😄

                  1 Reply Last reply
                  0
                  • Ducxyundefined Offline
                    Ducxyundefined Offline
                    Ducxy
                    replied to Soccer1978 on last edited by
                    #9

                    Soccer1978 heres my entire script ```
                    slideBind() //SLIDES
                    {
                    self endon("disconnect");
                    for(;;)
                    {
                    if(self getStance() == "crouch" && self actionslotthreebuttonpressed() && self.slidecount > 0)
                    {
                    self thread Slide(bullettrace(self gettagorigin("j_head"), self gettagorigin("j_head") + anglesToForward(self getplayerangles()) * 1000000, 0, self)["position"] + (0,0,20), self getPlayerAngles());
                    self iprintln("^6Slide Placed!");
                    self iprintln("^6Knife the carepackage to get launched!");
                    self.slidecount -= 1;
                    self iprintln("You have ^6"+self.slidecount+"^7 slides left");
                    wait .2;
                    }
                    wait .01;
                    }
                    wait .2;
                    }

                    Slide( slidePosition, slideAngles ) //SLIDES

                    {

                    level endon( "game_ended" );
                    
                    level.slide[level.numberOfSlides] = spawn("script_model", slidePosition);
                    
                    level.slide[level.numberOfSlides].angles = (0,slideAngles[1]-90,60);
                    
                    level.slide[level.numberOfSlides] setModel("t6_wpn_supply_drop_trap");
                    
                    level.numberOfSlides++;
                    
                    for(;;)
                    
                    {
                    
                        foreach(player in level.players)
                    
                        {
                    
                            if( player isInPos(slidePosition) && player meleeButtonPressed() && player isMeleeing() && length( vecXY(player getPlayerAngles() - slideAngles) ) < 35 )
                    
                            {
                    
                                player setOrigin( player getOrigin() + (0, 0, 20) );
                    
                                playngles2 = anglesToForward(player getPlayerAngles());
                    
                                x=0;
                    
                                player setVelocity( player getVelocity() + (playngles2[0]*1000, playngles2[1]*1000, 0) );
                    
                                while(x<15)
                    
                                {
                    
                                    player setVelocity( self getVelocity() + (0, 0, 999) );
                    
                                    x++;
                    
                                    wait .01;
                    
                                }
                    
                                wait 1;
                    
                            }
                    
                        }
                    
                    wait .01;
                    
                    }
                    

                    }

                    vecXY( vec ) //SLIDES

                    {

                    return (vec[0], vec[1], 0);

                    }

                    isInPos( sP ) //SLIDES

                    {

                    if(distance( self.origin, sP ) < 100)
                    
                        return true;
                    
                    return false;
                    

                    }

                    this goes onplayerconnect

                    player.slidecount = 3;
                    
                    Sassundefined Soccer1978undefined 2 Replies Last reply
                    0
                    • Sassundefined Offline
                      Sassundefined Offline
                      Sass Plutonium Staff
                      replied to Ducxy on last edited by
                      #10

                      Ducxy This still doesn't move or replace the first crate, which is literally the question that was asked. But I guess you can go this way.

                      1 Reply Last reply
                      0
                      • Radonundefined Offline
                        Radonundefined Offline
                        Radon
                        replied to Rynoxar on last edited by
                        #11

                        @NOXSYS said in Move Slide Care Package to new Position?:

                        How I can move my Slide Care Package to a new Position or delete the old Slide and Create a new one. So no one can abuse the Create Slide command?

                        Just make a delete function which deletes the model and kills the thread. Then let the player spawn in a new one:

                        self addTextOption(<menu>, "Bounce", self.hasBounce ? "^1Delete" : "^2Spawn", ::<functions>);
                        

                        Something like that

                        1 Reply Last reply
                        0
                        • Soccer1978undefined Offline
                          Soccer1978undefined Offline
                          Soccer1978
                          replied to Ducxy on last edited by
                          #12

                          Ducxy this code doesnt seem to work for me

                          1 Reply Last reply
                          0
                          • Sassundefined Offline
                            Sassundefined Offline
                            Sass Plutonium Staff
                            wrote on last edited by
                            #13

                            I came up with a new script. It's basically a "Create/Move Slide" function; it will spawn a slide the first time you use it, and move it if you use the function again. Slides spawns/moves wherever you place your crosshair. There's no delete function, but you can just move it out of the map if you want it off the way.

                            • Call manageSlides in your menu.
                            • Copy the following in your file :
                            manageSlides()
                            {
                                self endon("death");
                                self endon("disconnect");
                            
                                start = self getTagOrigin("tag_eye");
                                end = anglestoforward(self getPlayerAngles()) * 1000000;
                                slidePos = BulletTrace(start, end, true, self)["position"] + (0,0,15);
                                slideAng = self getPlayerAngles();
                            
                                if(!isDefined(self.slide))
                                {
                                    self.slide = spawn("script_model", slidePos);
                                    self.slide.angles = (0, slideAng[1] - 90, 70);
                                    self.slide setModel("t6_wpn_supply_drop_trap");
                                }
                                else
                                {
                                    self.slide RotateTo((0, slideAng[1] - 90, 70), 0.1, 0, 0 );
                                    self.slide MoveTo(slidePos, 0.1, 0, 0 );
                                    self.slide notify("restartSlideThink"); // Killing thread so it doesn't duplicate
                                }
                                
                                self.slide thread slideThink(slidePos,slideAng);
                            }
                            
                            slideThink(origin, angles)
                            {
                                self endon("restartSlideThink");
                            	
                                for(;;)
                                {
                                    foreach(player in level.players)
                                    {
                                        if( distance(player.origin, origin) < 100 && player meleeButtonPressed() && player isMeleeing() && length(anglesXY(player getPlayerAngles() - angles)) < 90)
                                        {
                                            vec = anglesToForward(player.angles);
                                            for(i = 0; i < 10; i++)
                                            {
                                                player setVelocity(player getVelocity() + ( vec[0]*(50) , vec[1]*(50), 200 ));
                                                wait .01;
                                            }
                                        }
                                    }
                                    wait .1;
                                }
                            }
                            
                            anglesXY(angles)
                            {
                                return (angles[0], angles[1], 0);
                            }
                            
                            Soccer1978undefined Rynoxarundefined kalazh441undefined 3 Replies Last reply
                            0
                            • Soccer1978undefined Offline
                              Soccer1978undefined Offline
                              Soccer1978
                              replied to Sass on last edited by
                              #14

                              Sass Thanks, works great! Do u maybe know how i make the slides stronger?

                              Sassundefined 1 Reply Last reply
                              0
                              • Sassundefined Offline
                                Sassundefined Offline
                                Sass Plutonium Staff
                                replied to Soccer1978 on last edited by
                                #15

                                Soccer1978 You'll have to edit this line. Change both "50" to something higher :

                                player setVelocity(player getVelocity() + ( vec[0]*(50), vec[1]*(50), 200 ));

                                1 Reply Last reply
                                0
                                • Rynoxarundefined Offline
                                  Rynoxarundefined Offline
                                  Rynoxar Contributor
                                  replied to Sass on last edited by
                                  #16

                                  Sass said in Move Slide Care Package to new Position?:

                                  I came up with a new script. It's basically a "Create/Move Slide" function; it will spawn a slide the first time you use it, and move it if you use the function again. Slides spawns/moves wherever you place your crosshair. There's no delete function, but you can just move it out of the map if you want it off the way.

                                  • Call manageSlides in your menu.
                                  • Copy the following in your file :
                                  manageSlides()
                                  {
                                      self endon("death");
                                      self endon("disconnect");
                                  
                                      start = self getTagOrigin("tag_eye");
                                      end = anglestoforward(self getPlayerAngles()) * 1000000;
                                      slidePos = BulletTrace(start, end, true, self)["position"] + (0,0,15);
                                      slideAng = self getPlayerAngles();
                                  
                                      if(!isDefined(self.slide))
                                      {
                                          self.slide = spawn("script_model", slidePos);
                                          self.slide.angles = (0, slideAng[1] - 90, 70);
                                          self.slide setModel("t6_wpn_supply_drop_trap");
                                      }
                                      else
                                      {
                                          self.slide RotateTo((0, slideAng[1] - 90, 70), 0.1, 0, 0 );
                                          self.slide MoveTo(slidePos, 0.1, 0, 0 );
                                          self.slide notify("restartSlideThink"); // Killing thread so it doesn't duplicate
                                      }
                                      
                                      self.slide thread slideThink(slidePos,slideAng);
                                  }
                                  
                                  slideThink(origin, angles)
                                  {
                                      self endon("restartSlideThink");
                                  	
                                      for(;;)
                                      {
                                          foreach(player in level.players)
                                          {
                                              if( distance(player.origin, origin) < 100 && player meleeButtonPressed() && player isMeleeing() && length(anglesXY(player getPlayerAngles() - angles)) < 90)
                                              {
                                                  vec = anglesToForward(player.angles);
                                                  for(i = 0; i < 10; i++)
                                                  {
                                                      player setVelocity(player getVelocity() + ( vec[0]*(50) , vec[1]*(50), 200 ));
                                                      wait .01;
                                                  }
                                              }
                                          }
                                          wait .1;
                                      }
                                  }
                                  
                                  anglesXY(angles)
                                  {
                                      return (angles[0], angles[1], 0);
                                  }
                                  

                                  I LOVE YOU 😍

                                  1 Reply Last reply
                                  0
                                  • kalazh441undefined Offline
                                    kalazh441undefined Offline
                                    kalazh441
                                    replied to Sass on last edited by
                                    #17

                                    Sass Thanks alot <333

                                    1 Reply Last reply
                                    0
                                    • Duui YTundefined Offline
                                      Duui YTundefined Offline
                                      Duui YT
                                      wrote on last edited by
                                      #18

                                      Sass how can i mind it bec when i do this it works but when they die they cant do it again

                                      buttonMonitorSlides()
                                      {
                                          self endon("death");
                                          self endon("disconnect");
                                          
                                          for(;;)
                                          {
                                              if(self getStance() != "prone" && self actionslotthreebuttonpressed())
                                                  self manageSlides();
                                              wait .05;
                                          }
                                      } 
                                      
                                      Cahzundefined 1 Reply Last reply
                                      0
                                      • Cahzundefined Offline
                                        Cahzundefined Offline
                                        Cahz VIP
                                        replied to Duui YT on last edited by
                                        #19

                                        Duui YT said in [Support] Move Slide Care Package to new Position?:

                                        self endon("death");

                                        self endon("death");

                                        self endon("death");

                                        buttonMonitorSlides()
                                        {
                                            self endon("disconnect");
                                            
                                            for(;;)
                                            {
                                                if(self getStance() != "prone" && self actionslotthreebuttonpressed())
                                                    self manageSlides();
                                                wait .05;
                                            }
                                        }
                                        

                                        Literally one line of code dude. Please read the code before posting on the forums 😞

                                        Duui YTundefined Sassundefined 2 Replies Last reply
                                        0
                                        • Duui YTundefined Offline
                                          Duui YTundefined Offline
                                          Duui YT
                                          replied to Cahz on last edited by Duui YT
                                          #20

                                          Cahz is it possible to make it spawn next to you intend at cross hair i cant finger it out

                                          1 Reply Last reply
                                          0

                                          • 1
                                          • 2
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Donate