Pacman
Key RequiredUniversal

Pacman

Universal ScriptDandyAndAstroAreSusDandyAndAstroAreSus 2.7K views 58 executesUpdated Feb 20, 2025
Unrated
00
Lua Script•56 lines (1665 chars)
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")

local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")

local pacman = Instance.new("Model")
pacman.Name = "Pacman"
pacman.Parent = workspace

local head = Instance.new("Part")
head.Name = "Head"
head.Shape = Enum.PartType.Ball
head.Size = Vector3.new(2, 2, 2)
head.Color = Color3.new(1, 1, 0) -- Yellow
head.Anchored = false
head.CanCollide = true
head.Parent = pacman

local mouth = Instance.new("Part")
mouth.Name = "Mouth"
mouth.Shape = Enum.PartType.Block
mouth.Size = Vector3.new(1, 1, 1)
mouth.Color = Color3.new(0, 0, 0) -- Black
mouth.Anchored = true
mouth.CanCollide = false
mouth.Parent = pacman

local mouthWeld = Instance.new("WeldConstraint")
mouthWeld.Part0 = head
mouthWeld.Part1 = mouth
mouthWeld.Parent = head
mouthWeld.C0 = CFrame.new(0, -0.5, 0) * CFrame.Angles(math.rad(45), 0, 0)

local speed = 16
local direction = Vector3.new(1, 0, 0)

local function updatePacmanPosition()
    local currentPosition = pacman.PrimaryPart.Position
    local newPosition = currentPosition + direction * speed
    pacman:SetPrimaryPartCFrame(CFrame.new(newPosition))
end

pacman:SetPrimaryPartCFrame(character:GetPivot())

local runService = game:GetService("RunService")
runService.Heartbeat:Connect(updatePacmanPosition)

local function onCharacterAdded(newCharacter)
    character = newCharacter
    humanoid = character:WaitForChild("Humanoid")
    pacman:SetPrimaryPartCFrame(character:GetPivot())
end

player.CharacterAdded:Connect(onCharacterAdded)

Features & Information

Pacman

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts