@chenanafrica: Pas de traduction. Pas de béquille. Juste eux, leurs mots, et la volonté d’avancer. Ce que tu vois dans cette vidéo, ce n’est pas de la perfection — c’est du COURAGE. Le courage de parler une langue qu’on ne maîtrise pas encore à 100%, devant les autres, sans se cacher. #anglais #anglaisfacile #abidjan225🇨🇮 #learnenglish #englishschool

Chenan Africa
Chenan Africa
Open In TikTok:
Region: GH
Thursday 30 July 2026 07:35:44 GMT
3918
352
7
6

Music

Download

Comments

djony671
Djony :
comment vous rejoindre ?
2026-07-30 20:28:17
2
sarahcarter225
Sunset✨🥀 :
Aujourd’hui j’ai rêvé que j’y étais 🤲🏽❤️
2026-07-30 08:00:52
4
patricianumbi770
Patricia Numbi :
c'est où l'adresse svp 🙏
2026-07-30 13:16:31
0
kalice5041
kalice :
comment intégrer
2026-07-31 10:34:17
0
laureine485
laureine :
❤️❤️❤️
2026-07-30 16:04:59
1
To see more videos from user @chenanafrica, please go to the Tikwm homepage.

Other Videos

I'd love to see people implement this in their games --------------------------------- Copy this into a local script in StarterCharacterScripts ---- local RunService = game:GetService(
I'd love to see people implement this in their games --------------------------------- Copy this into a local script in StarterCharacterScripts ---- local RunService = game:GetService("RunService") local Players = game:GetService("Players") local character = script.Parent local humanoidRootPart = character:WaitForChild("HumanoidRootPart") -- Variables to track the platform's state between frames local lastPlatform = nil local lastPlatformCFrame = nil -- Heartbeat runs after physics calculations, perfect for CFrame snapping RunService.Heartbeat:Connect(function(deltaTime) -- 1. Raycast down to find what the player is standing on local rayOrigin = humanoidRootPart.Position local rayDirection = Vector3.new(0, -15, 0) -- Adjust based on your character's HipHeight local raycastParams = RaycastParams.new() raycastParams.FilterDescendantsInstances = {character} raycastParams.FilterType = Enum.RaycastFilterType.Exclude local raycastResult = workspace:Raycast(rayOrigin, rayDirection, raycastParams) if raycastResult and raycastResult.Instance then local currentPlatform = raycastResult.Instance -- 2. Check if the platform is your train (using tags or names) -- We highly recommend using CollectionService to tag moving platforms if currentPlatform:HasTag("MovingPlatform") then if lastPlatform == currentPlatform then -- 3. Calculate the Delta CFrame (How much it moved/rotated) -- C1 * C0^-1 gives you the offset between the two frames local platformDeltaCFrame = currentPlatform.CFrame * lastPlatformCFrame:Inverse() print(currentPlatform.CFrame, lastPlatformCFrame:Inverse(), platformDeltaCFrame) -- 4. Apply that exact same offset to the player humanoidRootPart.CFrame = platformDeltaCFrame * humanoidRootPart.CFrame end -- Update tracking variables for the next frame lastPlatform = currentPlatform lastPlatformCFrame = currentPlatform.CFrame else -- The player is standing on normal ground lastPlatform = nil lastPlatformCFrame = nil end else -- The player is mid-air (jumping) lastPlatform = nil lastPlatformCFrame = nil end end) --------------------------------- #robloxstudio #foryoupage #gaming #gamedev

About