---
title: "SetTimer | open.mp"
description: "یک 'تایمر' تنظیم می‌کند تا یک تابع را پس از مدتی فراخوانی کند."
canonical: https://omp.itsneufox.com/fa/docs/scripting/functions/SetTimer
language: fa
---

# SetTimer

## توضیحات

یک 'تایمر' تنظیم می‌کند تا یک تابع را پس از مدتی فراخوانی کند. قابل تنظیم برای تکرار.

| اسم | توضیحات |
| --- | --- |
| const functionName\[\] | نام تابعی که باید به عنوان یک رشته فراخوانی شود. این باید یک تابع عمومی باشد. یک رشته خالی در اینجا باعث کرش سرور خواهد شد. |
| interval | فاصله زمانی (مدت زمان تایمر) به میلی‌ثانیه. |
| bool:repeating | مقدار بولین (true/false) برای مشخص کردن اینکه تایمر باید تکرار شود یا خیر. |

## مقادیر بازگشتی

شناسه تایمر شروع شده.

شناسه تایمر ها شروع می‌شوند از **1**.

## مثال ها

```c
public OnGameModeInit()
{
    print("Starting timer...");
    SetTimer("OneSecondTimer", 1000, true); // تنظیم یک تایمر تکرار شونده برای هر 1000 میلی‌ثانیه (1 ثانیه)
}

forward OneSecondTimer();
public OneSecondTimer()
{
    print("1 second has passed.");
}
```

## نکته ها

هشدار

-   فواصل زمانی تایمرها دقیق نیستند (تقریباً ۲۵٪ خطا) در SA-MP. راه حل هایی موجود هستند در [اینجا](https://sampforum.blast.hk/showthread.php?tid=289675) و [اینجا](https://sampforum.blast.hk/showthread.php?tid=650736). اما این مشکل در open.mp حل شده است.
-   استفاده از تایمر های زیاد باعث افزایش مصرف رم/سی‌پی‌یو خواهد شد.

یادداشت

-   شناسه‌های تایمر هرگز دوباره استفاده نمی‌شوند. شما می‌توانید با استفاده از [KillTimer](https://omp.itsneufox.com/fa/docs/scripting/functions/KillTimer) یک شناسه تایمر را متوقف کنید و مهم نیست که در حال اجرا باشد یا نه.
-   تابعی که باید فراخوانی شود، باید عمومی باشد، به این معنی که باید forwarded باشد.

## تعریف شده ها

| تعریف | مقدار |
| --- | --- |
| INVALID\_TIMER | 0 |

## تابع های مرتبط

-   [SetTimerEx](https://omp.itsneufox.com/fa/docs/scripting/functions/SetTimerEx): تنظیم تایمر با پارامتر ها.
-   [KillTimer](https://omp.itsneufox.com/fa/docs/scripting/functions/KillTimer): متوقف کردن یک تایمر
-   [IsValidTimer](https://omp.itsneufox.com/fa/docs/scripting/functions/IsValidTimer): بررسی وجود یک تایمر.
-   [IsRepeatingTimer](https://omp.itsneufox.com/fa/docs/scripting/functions/IsRepeatingTimer): بررسی اینکه آیا تایمر تکراری است یا خیر.
-   [GetTimerInterval](https://omp.itsneufox.com/fa/docs/scripting/functions/GetTimerInterval): گرفتن فاصله زمانی یک تایمر.
-   [GetTimerRemaining](https://omp.itsneufox.com/fa/docs/scripting/functions/GetTimerRemaining): گرفتن فاصله زمانی باقی مانده یک تایمر.
-   [CountRunningTimers](https://omp.itsneufox.com/fa/docs/scripting/functions/CountRunningTimers): گرفتن تایمر های درحال اجرا.
