local divnumb = 0 COM_AddCommand("setdivvalue", function(player, arg) arg = tonumber(arg) if arg then if arg < 0 then arg = nil end end if arg == nil CONS_Printf(player, "Sets the division value for the added momentum.") CONS_Printf(player, "Set it to 0 to make it tied to rings.") else divnumb = arg end end, COM_ADMIN) local maxring = 100 COM_AddCommand("setringcap", function(player, arg) arg = tonumber(arg) if arg then if arg < 1 then arg = nil end end if arg == nil CONS_Printf(player, "Sets the ring cap.") else maxring = arg end end, COM_ADMIN) local divcap = 35 COM_AddCommand("setmaxringdiv", function(player, arg) arg = tonumber(arg) if arg then if arg < 1 then arg = nil end end if arg == nil CONS_Printf(player, "Sets what the division value will be with maximum rings.") else divcap = arg end end, COM_ADMIN) local vertmom = 0 //command value shit COM_AddCommand("togglevertmom", function(player) if not ((player == server) or (IsPlayerAdmin(player))) CONS_Printf(player, "You aren't an admin") else if vertmom == 0 or vertmom == nil then //this is wioufhOIAWfhoilhfloGAWfhAfowgLOAW vertmom = 1 elseif vertmom == 1 then vertmom = 0 end end end, COM_ADMIN) local invertmom = 0 //command value shit 2 the electric boogaloo COM_AddCommand("toggleinvertmom", function(player) if not ((player == server) or (IsPlayerAdmin(player))) then CONS_Printf(player, "You aren't an admin") else if invertmom == 0 or invertmom == nil then invertmom = 1 elseif invertmom == 1 then invertmom = 0 end end end, COM_ADMIN) local function expoden(player) //value moment if divnumb == 0 then player.expo = (maxring + divcap) - player.rings if player.expo <= divcap then player.expo = divcap end else if divnumb >= 1 then player.expo = divnumb end end if player.expo <= (maxring - 1) and invertmom == 0 or divnumb >= 1 and invertmom == 0 then //made 1 typo and didn't notice 1 hour later player.mo.momx = $ + ($ / player.expo) //go apeshit on the x axis player.mo.momy = $ + ($ / player.expo) //go apeshit on the y axis but not vertical y end if vertmom == 0 and invertmom == 0 then //vertical exponetial momentum is kinda weird so heres your baby mode player.mo.momz = $ + ($ / player.expo) //go apeshit on the z axis if you want to end if player.expo <= (maxring - 1) and invertmom == 1 or divnumb >= 1 and invertmom == 1 //inverted your mom player.mo.momx = $ - ($ / player.expo) player.mo.momy = $ - ($ / player.expo) end if vertmom == 0 and invertmom == 1 then //you can jump mode player.mo.momz = $ - ($ / player.expo) end end addHook("PlayerThink", expoden) //cant even spell exponetial right COM_AddCommand("getvalues", function(player) CONS_Printf(player, (player.expo)) CONS_Printf(player, (divnumb)) CONS_Printf(player, (maxring)) CONS_Printf(player, (divcap)) end)