english | español | HowTo [ID# 77196] 

Sorry, this page translated from the original Spanish. Your help improving this translation will be very welcome :)

Go to Pilas Activity page in Spanish.

Pilas.xo Project

This brings the pilas-engine game development engine to Sugar, adapting it to the needs of the Sugar platform and adding elements to your learning curve.

We seek to facilitate a teaching tool for Python and game development.

This project was developed during the 2011 Sugar Junin Day Sugar Day Junin 2011

Links to the project

  • Pilas: [1]
  • Activity. .XO [2]
  • Code [3]
  • Issues tracker [4]
  • Name of branch 'pilasqt'. Command to take to the branch:
hg clone https://hugoruscitti@bitbucket.org/hugoruscitti/pilas 
cd pilas/ 
hg update pilasqt

Status

What has been done:

  • Packaging the pilas-engine [5] to run on Sugar.
  • Incorporation of PyQt libraries [6] into the activity
  • Adding widget ninja-ide [7] , to have the interactive shell on the same screen.
  • Generation of file dependencies needed for the project with PyInstaller [8]
  • Creating the pilas.xo activity

To-do immediately:

  • Bug: resize widgets
  • Bug: set focus
  • Documentation of how it is packaged with Qt activity [9] for Sugar
  • define user guidelines and make mockups
  • typical Pippy examples [10]
  • interpreter and code editor tabs
  • option to run in fullscreen or box
  • list of Pilas actions and behaviors
  • help tab
  • persistent options
  • Document examples / startup guide

Future Work

We must turn this into a roadmap ...

To-do:

  • Trim list of dependencies created PyInstaller, to include only what is needed
  • Incorporating autocomplete and inline help for the ninja-ide
  • Use dbus [11] to communicate with the menu of others
  • Incorporate Sugar persistence [persistence options or code to be developed]
  • Integrate code for the pilas-engine [12] and pilas.xo

Wish list

  • Refactoring to PyCairo [13]
  • Incorporate into the activity the possibility of Sugar sharing
  • Add interactive options on objects (such as in eToys [14] )


Getting Started

The Activity starts with a monkey(mono) preloaded in the upper pane and a lower pane that executes Python code in immediate mode

The following commands can be entered (from the Spanish documentation [15])

mono.sonreir()              //monkey smile
mono.gritar()               //monkey shout
mono.decir("Hello World!")
mono.x = 100
mono.y = 100
mono.escala = 2             //set scale
mono.rotacion = 40          //rotate 40 degrees
mono.rotacion = [360]       // the [] means animate
mono.x = [-200, 200]        //animate horizontally
mono.x = [-200, 200] * 5    //go side to side 5 times
mono.x = [-200, 200], 10    //animate over 10 seconds
help(mono)
pilas.ver(mono)             //view source
mono.eliminar()             //delete monkey
mono = pilas.actores.Mono() //create monkey

There is much more, read the Spanish. [16]

Running Pilas from Pippy

This is not working, help please!

Run the following code in Pippy

import sys
sys.path.append('/home/olpc/Activities/Pilas.activity')
import pilas
pilas.iniciar()