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

Plutonium

  1. Home
  2. MW3 Modding Support & Discussion
  3. Chaiscript help.

Chaiscript help.

Scheduled Pinned Locked Moved MW3 Modding Support & Discussion
6 Posts 4 Posters 913 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Meet-Your-Maker Offline
    Meet-Your-Maker Offline
    Meet-Your-Maker
    VIP
    wrote on last edited by Meet-Your-Maker
    #1

    Hi all! loving plutonium. trying to get my simple gsc code to work with chaiscript for hours now.

    savecurrentPos()
    {
    self endon("disconnect");
    self endon("killed_player");
    self endon("joined_spectators");
    self notifyOnPlayerCommand("v", "+melee");
    
    for ( ;; )
    {
    
    self waittill("v");
    self.saved_origin = self.origin;
    self.saved_angles = self.angles;
    self iprintln("^2Current Position Saved");
    
    }
    }
    
    loadlastPos()
    {
    self endon("disconnect");
    self notifyOnPlayerCommand("f", "+activate");
    
    for ( ;; )
    {
    
    self waittill("f");
    self freezecontrols(true);
    wait 0.05;
    self setPlayerAngles(self.saved_angles);
    self setOrigin(self.saved_origin);
    self iprintln("^2Last Position Loaded");
    self freezecontrols(false);
    
    }
    
    }```
    
    Honestly any help would be great.
    i know Very basic gsc. even this took way to long than it should have.
    simply just trying to make a save/load script.
    the whole chaiscript thing just its clicking right now. lol
    Thanks
    -Kyle
    1 Reply Last reply
    0
    • xensik Offline
      xensik Offline
      xensik
      wrote on last edited by xensik
      #2
      // Teleport ChaiScript - xensik
      
      def onPlayerConnected(args)
      {
          var player = args[0];
          gsc.iprintln("hello");
          var saved = false;
          var saved_pos;
          var saved_ang;
          
          player.notifyOnPlayerCommand("save_pos", "+actionslot 3");
          player.notifyOnPlayerCommand("load_pos", "+actionslot 4");
      
          player.onNotify("save_pos", fun[player, saved, saved_pos, saved_ang]()
          {
              saved_pos = player.getOrigin();
              saved_ang = player.getPlayerAngles();
              saved = true;
              player.iprintlnbold("^3Position Saved!");
          });
      
          player.onNotify("load_pos", fun[player, saved, saved_pos, saved_ang]()
          {
              if(saved)
              {
                  player.setOrigin(saved_pos);
                  player.setPlayerAngles(saved_ang);
                  player.iprintlnbold("^2Teleported!");
              }
          });
      }
      
      level.onNotify("connected", onPlayerConnected);
      

      should work when notifies get fixed. wait for a update

      Meet-Your-Maker jwofles 2 Replies Last reply
      0
      • xensik xensik
        // Teleport ChaiScript - xensik
        
        def onPlayerConnected(args)
        {
            var player = args[0];
            gsc.iprintln("hello");
            var saved = false;
            var saved_pos;
            var saved_ang;
            
            player.notifyOnPlayerCommand("save_pos", "+actionslot 3");
            player.notifyOnPlayerCommand("load_pos", "+actionslot 4");
        
            player.onNotify("save_pos", fun[player, saved, saved_pos, saved_ang]()
            {
                saved_pos = player.getOrigin();
                saved_ang = player.getPlayerAngles();
                saved = true;
                player.iprintlnbold("^3Position Saved!");
            });
        
            player.onNotify("load_pos", fun[player, saved, saved_pos, saved_ang]()
            {
                if(saved)
                {
                    player.setOrigin(saved_pos);
                    player.setPlayerAngles(saved_ang);
                    player.iprintlnbold("^2Teleported!");
                }
            });
        }
        
        level.onNotify("connected", onPlayerConnected);
        

        should work when notifies get fixed. wait for a update

        Meet-Your-Maker Offline
        Meet-Your-Maker Offline
        Meet-Your-Maker
        VIP
        wrote on last edited by
        #3

        xensik
        Wow, awesome. I really need to spend some time with Chai. Thanks for though though! 🙂 I tried and tried earlier today.

        Is the syntax similar to C?

        1 Reply Last reply
        0
        • xensik xensik
          // Teleport ChaiScript - xensik
          
          def onPlayerConnected(args)
          {
              var player = args[0];
              gsc.iprintln("hello");
              var saved = false;
              var saved_pos;
              var saved_ang;
              
              player.notifyOnPlayerCommand("save_pos", "+actionslot 3");
              player.notifyOnPlayerCommand("load_pos", "+actionslot 4");
          
              player.onNotify("save_pos", fun[player, saved, saved_pos, saved_ang]()
              {
                  saved_pos = player.getOrigin();
                  saved_ang = player.getPlayerAngles();
                  saved = true;
                  player.iprintlnbold("^3Position Saved!");
              });
          
              player.onNotify("load_pos", fun[player, saved, saved_pos, saved_ang]()
              {
                  if(saved)
                  {
                      player.setOrigin(saved_pos);
                      player.setPlayerAngles(saved_ang);
                      player.iprintlnbold("^2Teleported!");
                  }
              });
          }
          
          level.onNotify("connected", onPlayerConnected);
          

          should work when notifies get fixed. wait for a update

          jwofles Offline
          jwofles Offline
          jwofles
          wrote on last edited by
          #4

          xensik said in Chaiscript help.:

          should work when notifies get fixed. wait for a update

          Are notifies currently broken? How do some servers have save/load pos already working?

          1 Reply Last reply
          0
          • xensik Offline
            xensik Offline
            xensik
            wrote on last edited by
            #5

            using C++

            1 Reply Last reply
            0
            • Duui YT Offline
              Duui YT Offline
              Duui YT
              wrote on last edited by
              #6
              This post is deleted!
              1 Reply Last reply
              0

              Hello! It looks like you're interested in this conversation, but you don't have an account yet.

              Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

              With your input, this post could be even better 💗

              Register Login
              Reply
              • Reply as topic
              Log in to reply
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes


              • Login

              • Don't have an account? Register

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