Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>DayZ Enforce ScriptNew to Visual Studio Code? Get it now.
DayZ Enforce Script

DayZ Enforce Script

Walace Wilker

|
32 installs
| (0) | Free
Extensão completa para desenvolvimento de Enforce Script no DayZ com suporte ao Community Framework
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

DayZ Enforce Script Extension

Extensão completa para desenvolvimento de Enforce Script no DayZ com suporte ao Community Framework.

🚀 Características

✅ Suporte Completo à Linguagem

  • Syntax Highlighting completo para Enforce Script
  • Auto-complete inteligente com documentação
  • Validação de sintaxe em tempo real
  • Detecção de erros avançada
  • Formatação automática de código

🎯 Funções Nativas do DayZ

  • 100+ funções nativas do DayZ com documentação completa
  • Validação de parâmetros para todas as funções
  • Hover documentation com exemplos de uso
  • Auto-complete contextual

🏗️ Community Framework (CF)

  • Suporte completo ao Community Framework
  • Snippets específicos para módulos CF
  • Validação de parâmetros para funções CF
  • Documentação integrada para todas as classes CF
  • Auto-complete para funções e classes CF

📝 Snippets Avançados

  • 50+ snippets para estruturas básicas
  • 100+ snippets para funções do DayZ
  • Snippets específicos para Community Framework
  • Snippets para métodos de classes DayZ
  • Snippets avançados para sistemas específicos

🔧 Funcionalidades Avançadas

  • Diagnósticos em tempo real
  • Sugestões de correção automática
  • Validação de contexto para funções
  • Documentação hover detalhada
  • Comandos personalizados

📦 Instalação

  1. Abra o VS Code
  2. Vá para a aba Extensions (Ctrl+Shift+X)
  3. Pesquise por "DayZ Enforce Script"
  4. Clique em Install

🎮 Como Usar

Arquivos Suportados

  • .c - Arquivos C/C++
  • .cpp - Arquivos C++
  • .h - Arquivos de cabeçalho
  • .hpp - Arquivos de cabeçalho C++
  • .des - Arquivos Enforce Script

Exemplo Básico

modded class DayZPlayer
{
    void DayZPlayer()
    {
        // Auto-complete e validação automática
        Print("Player created!");
        
        // Hover para documentação
        vector pos = GetPosition();
        
        // Validação de parâmetros
        SetHealth(100.0);
    }
}

Exemplo com Community Framework

[CF_RegisterModule(MyModule)]
class MyModule : CF_ModuleWorld
{
    override void OnInit()
    {
        super.OnInit();
        
        // Habilitar eventos
        EnableInvokeConnect();
        
        // Logging CF
        CF_Log.Info("Module initialized");
    }
    
    override void OnInvokeConnect(Class sender, CF_EventArgs args)
    {
        super.OnInvokeConnect(sender, args);
        
        auto player = CF_EventPlayerArgs.Cast(args).Player;
        CF_Log.Info("Player connected: " + player.GetIdentity().GetName());
    }
}

🛠️ Configurações

Parâmetros Disponíveis

  • des.enableParameterValidation - Validação de parâmetros
  • des.enableHoverDocumentation - Documentação no hover
  • des.enableSyntaxValidation - Validação de sintaxe avançada
  • des.enableContextValidation - Validação de contexto CF

📚 Recursos do Community Framework

🗂️ Sistema de Arquivos

// Operações de arquivo
CF_TextWriter writer = new CF_TextWriter(new CF_FileStream("$profile:test.txt", FileMode.WRITE));
writer.WriteLine("Hello World!");
writer.Close();

// Leitura de arquivos
CF_TextReader reader = new CF_TextReader(new CF_FileStream("$profile:test.txt", FileMode.READ));
Print(reader.ReadLine());
reader.Close();

📊 Logging Avançado

// Diferentes níveis de log
CF_Log.Trace("Debug detalhado");
CF_Log.Debug("Informação de debug");
CF_Log.Info("Informação geral");
CF_Log.Warn("Aviso");
CF_Log.Error("Erro");
CF_Log.Critical("Erro crítico");

🔄 Event Handler

// Event handler tipado
ref CF_EventHandlerT<float> MyEvent = new CF_EventHandlerT<float>();

void InvokeEvent()
{
    MyEvent.Invoke(this, 42.0f);
}

🎯 Input Bindings

class MyClass
{
    autoptr CF_InputBindings m_CF_Bindings = new CF_InputBindings(this);
    
    void MyClass()
    {
        m_CF_Bindings.Bind("PrintMessage", "UAUIBack", false);
    }
    
    void PrintMessage(UAInput input)
    {
        Print("Hello, World!");
    }
}

💾 Mod Storage

modded class KitBase
{
    int someVariable;
    
    override void CF_OnStoreSave(CF_ModStorageMap storage)
    {
        super.CF_OnStoreSave(storage);
        
        auto ctx = storage["MyMod"];
        if (!ctx) return;
        
        ctx.Write(someVariable);
    }
    
    override bool CF_OnStoreLoad(CF_ModStorageMap storage)
    {
        if (!super.CF_OnStoreLoad(storage)) return false;
        
        auto ctx = storage["MyMod"];
        if (!ctx) return true;
        
        if (!ctx.Read(someVariable)) return false;
        
        return true;
    }
}

🎨 Snippets Disponíveis

Snippets Básicos

  • class - Criar classe
  • modded - Modificar classe existente
  • function - Criar função
  • if - Estrutura condicional
  • for - Loop for
  • while - Loop while

Snippets DayZ

  • getplayer - Obter jogador
  • getposition - Obter posição
  • sethealth - Definir saúde
  • print - Imprimir no console
  • fileexist - Verificar arquivo

Snippets Community Framework

  • cfmodule - Criar módulo CF
  • cfrpc - Configurar RPC
  • cffile - Operações de arquivo CF
  • cflog - Logging CF
  • cftrace - Context tracing
  • cfsurface - Informações de superfície
  • cfweapon - Operações de arma
  • cfevent - Event handler
  • cfstorage - Mod storage
  • cfinput - Input bindings
  • cftypeconverter - Type converter
  • cflifecycle - Lifecycle events
  • cfexpression - Expression VM
  • cflocaliser - Localiser
  • cfcrypto - Cryptography

🔍 Comandos Disponíveis

Comandos da Extensão

  • des.helloWorld - Comando de teste
  • des.showFunctionDocumentation - Mostrar documentação da função
  • des.validateSyntax - Validar sintaxe do arquivo

📖 Documentação

Baseada na Documentação Oficial

  • DayZ Explorer: https://dayzexplorer.zeroy.com/
  • Community Framework: Documentação completa integrada

Recursos Adicionais

  • Exemplos completos incluídos
  • Documentação hover detalhada
  • Validação de parâmetros em tempo real
  • Sugestões de correção automática

🚀 Desenvolvimento

Estrutura do Projeto

vscode-dayz-enforce-script-extension/
├── src/
│   ├── extension.ts              # Lógica principal
│   ├── parameter-validation.ts   # Validação de parâmetros
│   └── syntax-validator.ts       # Validação de sintaxe
├── snippets/
│   ├── des.json                  # Snippets básicos
│   ├── dayz-functions.json       # Funções DayZ
│   ├── dayz-complete-methods.json # Métodos completos
│   ├── dayz-advanced-snippets.json # Snippets avançados
│   └── cf-framework-snippets.json # Community Framework
├── syntaxes/
│   └── des.tmLanguage.json       # Syntax highlighting
├── examples/
│   ├── player_manager.c          # Exemplo básico
│   └── dayz_complete_example.c  # Exemplo completo
└── docs/
    ├── dayz-classes-reference.md # Referência de classes
    ├── COMPLETE_FEATURES.md      # Recursos completos
    └── FINAL_IMPROVEMENTS.md    # Melhorias finais

Scripts Disponíveis

npm run compile    # Compilar TypeScript
npm run watch      # Compilar em modo watch
npm run lint       # Executar ESLint

🤝 Contribuição

Contribuições são bem-vindas! Por favor:

  1. Fork o projeto
  2. Crie uma branch para sua feature
  3. Commit suas mudanças
  4. Push para a branch
  5. Abra um Pull Request

📄 Licença

Este projeto está licenciado sob a MIT License.

🙏 Agradecimentos

  • DayZ Community - Pelo suporte contínuo
  • Community Framework Team - Pela documentação excelente
  • DayZ Explorer - Pela documentação completa das funções

📞 Suporte

  • Issues: Reporte bugs no GitHub
  • Documentação: Consulte a documentação integrada
  • Comunidade: Participe da comunidade DayZ

Desenvolvido com ❤️ para a comunidade DayZ

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft